![]() |
Memproof
Hi,
hat jemand zu Memproof weitergehende Informationen ? Ich kann damit nichts rechtes anfangen. 8) Wie setzt man das am besten ein ? Oder gibts was anderes/besseres ? |
Re: Memproof
Was IST Memproof überhaupt?
So wie es sich anhört, scheint es eine Komponente zu sein, die Daten so speichert, dass sie nicht ausgelagert werden. Oder eine Memory-Leak-Checking-Software? |
Re: Memproof
|
Re: Memproof
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Bernhard,
kannst Du mal ein paar Tips geben, wie ich das tool benutze? Ich habe die Unit in die Uses-Klausel eingebunden und im ProjektRumpf den Aufruf 'MemChk' stehen. Die Compileroptionen: Optimization -> aus; Stackframes -> an; Pentium... an. Außerdem habe ich die TD32debuginfo included. Beim Start meines Programms erscheinen dann zwei Exceptions. Danach wird das Programm wieder beendet. Im Log stehen dann zwar die Fehler, ich kann aber nicht daraus schließen, wo ich suchen soll... Kannst Du mir helfen? |
Re: Memproof
Zitat:
Programmende nicht freigegeben wurden. Der Speicher wurde beim Erzeugen der Exceptions reserviert. Da die Exceptions aber zu einem unsanften Abbruch deiner Anwendung geführt haben, ist hier kein Grund, sich um Speicherlecks Sorgen zu machen. Du musst nun nach der Ursache der 1. Exception suchen (Welche Message ?). Die 2. Exception brauchst du überhaupt nicht zu verfolgen/beachten. |
Re: Memproof
Zitat:
|
Re: Memproof
Liste der Anhänge anzeigen (Anzahl: 1)
Die Memcheck-Unit bindest Du als erste in deine Projektdatei ein und
die der Aufruf von MemChk ist der erste in deinem Projekt. Auch solltest Du keine Optimierungseinstellungen vornehmen. Und der Pentium-Schalter ist mitlerweile m.E. sinnlos (wieviele Rechner gibt es noch mit diesem Fehlerhaften Prozessor und wie wahrscheinlich ist das Auftreten?) Anbei meine Compileroptionen, welche funktionieren. |
Re: Memproof
Zitat:
|
Re: Memproof
Zitat:
falschen Zeigern (v.a. NIL-Zeiger) werden damit nicht entdeckt. MemCheck prüft am Programmende, ob zu jeder Speicherreservierung auch die Freigabe des Speichers erfolgt hat. MemProof geht da deutlich weiter und prüft auch ob Windows-Handles beim Programmende freigegeben wurden. (das Programm müsste eigentlich ResourcenProof heissen, denn es prüft, ob alle Resourcen (Speicher, Handles, Semaphoren, ...) beim Progende korrekt abgegeben werden) MemProof scheint aber wohl noch einige Bugs zu haben und ist im Beta-Stadium stehengeblieben. :cry: Beide Tools nützen bei einer Zugriffsverletzung gar nichts. siehe: ![]() |
Re: Memproof
Hi,
ok. Dann ist das so in Ordnung und ich muss mal weiter schauen, ob ich den Fehler finde. Danke für deine Hilfe! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:27 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