![]() |
MemCheck 2.75 und Delphi XE2
Hallo zusammen,
ich habe ein altes kleines Testprogramm aus Delphi 7 hervor geholt, das ich zum Testen von MemCheck verwendet habe. Unter Delphi XE2 bekomme ich aber mehrere Übersetzungsfehler, u.a.: - Undeklarierter Bezeichner 'Variants' (Zeile 1567) - Typen der ... VAR-Parameter müssen übereinstimmen (Zeile 1579) - Inkompatible Typen 'NativeInt' und 'Integer' (Zeile 2460) Ich bin etwas ratlos was ich wie und wo ändern muss. Kann mir bitte jemand ein paar Hinweise geben ? Mike |
AW: MemCheck 2.75 und Delphi XE2
In XE2 hat sich einiges getan.
So gibt es jetzt Unit Scope Names: ![]() Versuche bei der betreffenden Uses-Klausel statt Variants mal System.Variants zu nehmen. Ansonsten empfiehlt sich in der Deklaration der Funktion zu schauen, die NativeInt anstatt Integer erwartet (Strg + Linksklick). Es ist wahrscheinlich eine externe (Windows-)Funktion o. ä., richtig? |
AW: MemCheck 2.75 und Delphi XE2
Schmeiß MemCheck rauß - gibts nicht mehr.
Neue und viel besserer Checker ist der auch in XE2 integrierter ![]() |
AW: MemCheck 2.75 und Delphi XE2
Nja, eigentlich sollte das ursprüngliche FastMM besser sein, da es auch noch mehr Optionen/Möglichkeiten hat, vorallem was die Fehlersuche betrifft.
Beim "kleinen" FastMM, direkt in Delphi, kann man nicht soviel machen, da man diesen auch nicht (mit anderen Optionen) kompilieren kann. |
AW: MemCheck 2.75 und Delphi XE2
Zitat:
Delphi-Quellcode:
stehen und bekomme am Programmende eine Messagebox mit einigen Angaben. Aber das ist so allgemein gehalten, dass ich daraus keine großen Informationen entnehmen kann. Muss bzw. kann ich da noch mehr einstellen ?
ReportMemoryLeaksOnShutDown := DebugHook <> 0
Mike |
AW: MemCheck 2.75 und Delphi XE2
Definiere "Allgemein gehalten"?
Und nicht vergessen mit TD32-Debug-Infos zu kompilieren wenn zu Zeilennummern sehen willst. |
AW: MemCheck 2.75 und Delphi XE2
Zitat:
Im Delphi ist eine abgespeckte, vereinfachte und etwas veränderte Version enthalten vom ![]() Mit mehr Debuginfos ist vielleicht noch etwas mehr möglich, aber alle Möglichkeiten kann es nicht geben. |
AW: MemCheck 2.75 und Delphi XE2
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Die TD32-Debug-Infos habe ich auch drin, aber die Anzeige bleibt gleich. |
AW: MemCheck 2.75 und Delphi XE2
Gug dir mal die Datei *_MemoryManager_EventLog.txt Datei im Anwendungsverzeichnis an. Dort steht mehr drin.
|
AW: MemCheck 2.75 und Delphi XE2
Zitat:
|
AW: MemCheck 2.75 und Delphi XE2
Zitat:
|
AW: MemCheck 2.75 und Delphi XE2
So, ich habe jetzt die "große" Version von FastMM drin. Nach ein paar Versuchen habe ich jetzt auch die Log-Datei. Nun muss ich nur noch verstehen, was das alles bedeutet.
Danke für die Hilfe. Mike |
AW: MemCheck 2.75 und Delphi XE2
Hallo,
ich habe doch noch ein paar Fragen. Mein Log-Protokoll ist momentan extrem groß und die Erstellung dauert eine Ewigkeit. 1. Kann man FastMM so einstellen, daß nur bestimmte Programmabschnitte oder Units überwacht werden ? 2. Kann der Inhalt des Protokolls (einzelne Abschnitte) selbst konfiguriert werden ? Mit besten Grüßen, Mike |
AW: MemCheck 2.75 und Delphi XE2
Zitat:
Zitat:
Zitat:
|
AW: MemCheck 2.75 und Delphi XE2
Große Datei => Viele Fehler.
Ewig Warten, bis Anwendung beendet ist => sehr detaillierte Optionen (Überwachung bereits freigegebener Speicherblöcke etc.) |
AW: MemCheck 2.75 und Delphi XE2
Zitat:
Zitat:
Zitat:
|
AW: MemCheck 2.75 und Delphi XE2
Hi,
is die Datei FastMM4Options.inc nicht genau das, womit du das Log-Verhalten steuern kannst? Die liegt bei der Unit FastMM.pas. Wenn Du viele DLLs und oder Pakages verwendest könnte nach der Erklärung in der Include-Datei die Defines
Delphi-Quellcode:
und
{$define NeverUninstall}
Delphi-Quellcode:
weiter helfen. Auch dieses Define könnte das File erstmal kleiner machen
{$define UseRuntimePackages}
Delphi-Quellcode:
.
{$define DisableLoggingOfMemoryDumps}
Wenn du es nicht schon getan hast, dann schau mal kurz über diese Include-Datei :-) Gruß, Chris |
AW: MemCheck 2.75 und Delphi XE2
Zitat:
Mike |
AW: MemCheck 2.75 und Delphi XE2
Zitat:
![]() Weitere Infos zu FastMM: ![]() ![]() |
AW: MemCheck 2.75 und Delphi XE2
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz