Einzelnen Beitrag anzeigen

Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#1

Vista -> Registry in LOCAL_MACHINE

  Alt 16. Mär 2007, 09:52
*gruml* und schon das nächste problem ....

Delphi-Quellcode:
procedure TForm2.Button2Click(Sender: TObject);
var
    DummyArray : array[1..4] of Byte;
    NativeReg : TRegistry;
    S : String;
    Version : integer;
    ExeName : string;
begin
    DummyArray[1] := 2;
    DummyArray[2] := 0;
    DummyArray[3] := 0;
    DummyArray[4] := 0;

    ExeName := 'meineExe';

    NativeReg := TRegistry.Create;
    NativeReg.RootKey := HKEY_LOCAL_MACHINE;
    NativeReg.OpenKey('SOFTWARE\Clients\Mail', True);
    NativeReg.WriteString('', ExeName);
    NativeReg.CloseKey;
    NativeReg.OpenKey('SOFTWARE\Clients\Mail\'+ExeName, True);
    NativeReg.WriteString('', ExeName);
    NativeReg.CloseKey;
    NativeReg.OpenKey('SOFTWARE\Clients\Mail\'+ExeName+'\Protocols\mailto', True);
    NativeReg.WriteString('', 'URL:MailTo Protocol');
    NativeReg.WriteBinaryData('Edit Flags', DummyArray, 4);
    NativeReg.WriteString('URL Protocol', '');
    NativeReg.CloseKey;
    NativeReg.OpenKey('SOFTWARE\Clients\Mail\'+ExeName+'\Protocols\mailto\DefaultIcon', True);
    NativeReg.WriteString('', '"'+ExeName+'",0');
    NativeReg.CloseKey;
    NativeReg.OpenKey('SOFTWARE\Clients\Mail\'+ExeName+'\Protocols\mailto\shell\open\command', True);
    NativeReg.WriteString('', '"'+ExeName+'" -newmail "%1"');
    NativeReg.CloseKey;
    NativeReg.OpenKey('SOFTWARE\Clients\Mail\'+ExeName+'\shell\open\command', True);
    NativeReg.WriteString('', '"'+ExeName+'"');
    NativeReg.CloseKey;
    NativeReg.Free;
hab hier ein stückchen code, unter XP funkt das wunderbar

habs nun unter vista laufen ... ohne admin rechte bekomm ich normalen fehler, das er nicht schreiben darf ... alles klar, admin rechte gegeben, und jetzt läuft zwar alles ohne probs aber die registry ändert sich nicht
ändere ich es auf HKEY_CURRENT_USER um, dann schreibt ers.
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat