Einzelnen Beitrag anzeigen

Benutzerbild von Amalkotey
Amalkotey

Registriert seit: 9. Feb 2004
Ort: Oberhausen
36 Beiträge
 
Delphi 2007 Enterprise
 
#1

Fehlermeldung beim Schreiben in der Registry

  Alt 16. Jul 2021, 17:28
Moin,

nach einer langen und schweren Erkrankung, bin ich gerade dabei, meine Programme an Windows 10 x64 mit Delphi 7 Pro anzupassen. Ich stelle nun mehr fest, das ich viel vergessen habe.

Nun zu meinnem Problem. Ich ver suche mit nachfolgenden Code

Delphi-Quellcode:
Procedure SetRegistryRun(User: Integer);
Var
  Reg: TRegistry;
  Titel : String;

Const
  KEY_WOW64_64KEY = $0100;
  KEY_WOW64_32KEY = $0200;

Begin
  If IsWow64 = True Then Begin
    Reg := TRegistry.Create(KEY_ALL_ACCESS OR KEY_WOW64_64KEY);
  End Else Begin
    Reg := TRegistry.Create(KEY_ALL_ACCESS OR KEY_WOW64_32KEY);
  End;
  Try
   If User = 1 Then
        Reg.RootKey := HKEY_LOCAL_MACHINE
      Else
        Reg.RootKey := HKEY_CURRENT_USER;
    If Reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run', True) then Begin
      Titel := Application.Title;
         Titel := strLeft(Titel, Pos('WINDOWS', Titel) + 6);
      Reg.WriteString(Titel, Application.ExeName);
      AlertBox('SetRegistryRun: ' + SysErrorMessage(GetLastError), 'Fehlermeldung', 0);
       Reg.CloseKey;
    End;
   Finally
     Reg.Free;
   End;
End;
einen Wert in 'Software\Microsoft\Windows\CurrentVersion\Run' zu schreiben. Bei HKEY_CURRENT_USER funktioniert es einwandfrei. Bei HKEY_LOCAL_MASCHINE im Gegensatz nicht. Was ist Falsch? Ich bitte um Hilfe

-Amalkotey-
esdaS© - ESPRIT DATA SOFTWARE
[esdaS© := Software mit Charisma und Esprit]
  Mit Zitat antworten Zitat