Einzelnen Beitrag anzeigen

Benutzerbild von Trouble_Maker
Trouble_Maker

Registriert seit: 30. Jan 2003
244 Beiträge
 
Delphi 6 Personal
 
#1

Autostart: Wieso funktioniert der Code nicht ?!?

  Alt 24. Jun 2003, 14:01
Hiho ...
will in mein Programm einen Autostart einbauen! Ich finde meinen Fehler aber nicht!!! (also der Compiler meckert auch nicht) :


Code:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var reg: TRegistry;
begin
  if CheckBox1.checked = true then
    begin
      reg:=TRegistry.Create;
      reg.RootKey:=HKEY_CURRENT_USER;
      reg.OpenKey('Software\Trouble_Maker\Secure\', true);
      reg.WriteInteger('Autostart', 1);
    end
  else
      reg:=TRegistry.Create;
      reg.RootKey:=HKEY_CURRENT_USER;
      reg.OpenKey('Software\Trouble_Maker\Secure\', true);
      Reg.DeleteValue('Autostart');
end;
Code:
procedure TForm1.FormCreate(Sender: TObject);
var Reg: TRegistry;
begin
   //Autostart
       try
          reg:=TRegistry.Create;
          reg.RootKey:=HKEY_CURRENT_USER;
          reg.OpenKey('Software\Trouble_Maker\Secure\', true);

   if reg.ValueExists('Autostart') then
     begin
       CheckBox1.checked := true;
     end;
       except
         free;
       end;
end;
Code:
procedure TForm1.CheckBox1Click(Sender: TObject);
var Reg: TRegistry;
begin
 if CheckBox1.checked = true then
    begin
      Reg := TRegistry.Create;
      Reg.RootKey := HKEY_LOCAL_MACHINE;
      Reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run', True);
      Reg.WriteString('Security-Tool.exe', ParamStr(0));
      Reg.Destroy;
    end;

  if CheckBox1.checked = true then
    begin
      Reg := TRegistry.Create;
      Reg.RootKey := HKEY_LOCAL_MACHINE;
      Reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run', True);
      Reg.DeleteValue('Security-Tool.exe');
      Reg.Destroy;
    end;

end;
so ... also
1. Auch wenn ich das Programm im Autostart habe, zeigt er nicht bei der Checkbox einen Haken.
2. Wenn ich den Autostart mit der Checkbox ausschalte (keinen Haken) dann startet das Programm trotzdem !!!

woran liegt das ?!?

danke

cu Trouble_Maker
  Mit Zitat antworten Zitat