@Popov:
Also das schlechteste an deiner
Unit ist, dass du TRegIniFile verwendest. Diese Klasse ignoriert Fehler schlichtweg.
Delphi-Quellcode:
Key := CreateKey(...);
if Key <> 0 then
begin
...
end;
Das steht in vielen Fällen im Code von TRegIniFile. Ich würde dir empfehlen, deine
Unit umzuschreiben, damit sie TRegistry verwendet. Dann tobe dich noch mit den Fehlerfällen aus (Exceptions) und es sollte funktionieren.
Bis dahin kannst du die Vistaleute ausprobieren lassen, den Kompatibilitätsmodus einzuschalten.
Und wenn du dann dich immernoch ausgetobt hast, dann kannst du ja mal die
JWSCL (
http://blog.delphi-jedi.net) anschauen. Da drin sind vermutlich auch noch einige Schnitzer (entstanden in der Zeit zwischen 1 und 5 Uhr morgens).