![]() |
MemProof - RegOpenKeyEx
ich habe folgende funktion:
Delphi-Quellcode:
memproof meldet mir immer folgendes und zeigt die oben markierte stelle an:
class function TRegistryAccess.Exists(reg: TRegistry; root: HKEY; key: string; value: string; typ: TRegDataType): boolean;
begin Result := false; try reg.RootKey := root; if reg.OpenKey(key, FALSE) = true then ////// HIER ZEIGT MEMPROOF DIE MELDUNG begin try if reg.ValueExists(value) then begin if typ = reg.GetDataType(value) then begin Result := true; end; end; finally reg.CloseKey; end; end; except ... end; end; 2 Error 00000002 0 RegOpenKeyEx(-2147483648,".wsh\PersistentHandler",0,983103,0) : Das Sy woran kann das liegen? es ist doch eigentlich nix sonderlich im quellcode? falls jetzt reg.openkey false zurück gibt, dann muss doch auch net der key geschlossen werden, oder? |
Re: MemProof - RegOpenKeyEx
Durch das
Delphi-Quellcode:
wird dein Objekt nur freigegeben, wenn ein Fehler, sprich eine Exception ausgelöst wird. Benutz da ein
try
except end
Delphi-Quellcode:
try
finally end |
Re: MemProof - RegOpenKeyEx
hmm luckie, aber welches objekt meinst du denn?
reg: TRegistry wird übergeben und eine ebene weiter oben freigegeben. |
Re: MemProof - RegOpenKeyEx
Ups, ich hatte erst gedacht, du erzeugst das Objekt auch in der Funktion. Aber warum übergibst du überhaupt ein Registry Objekt? Du kannst es doch lokal erzeuigen, gucken, ob der Schlüssel existiert und dann wieder freigeben. Außerhalb der Funktion wird es doch gar nicht gebraucht.
|
Re: MemProof - RegOpenKeyEx
naja, ich erzeuge das reg objekt einmal, weiß einmal die schlüssel usw... zu und dann kann ich jedesmal alle read-, write-funktionen usw.. aufrufen.
aber trotzdem, damit dürfte es ja gar nichts zu tun haben?! |
Re: MemProof - RegOpenKeyEx
Zitat:
|
Re: MemProof - RegOpenKeyEx
also exceptions treten keine auf...
sobald ja das openkey erfolgreich ausgeführt wurde, komm ich ja ins try ... finally vom reg.Closekey, das müsste doch passen, oder? |
Re: MemProof - RegOpenKeyEx
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:55 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