Was hat den nicht geklappt? Stimmt der Pfad? Hast du Zugriffsrechte?
Und nebenbei kapsel das ganze mal bitte in einen
try-
finally-Block:
Code:
procedure SetWebBrowser(Path: String);
var Reg: TRegistry
begin
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_CLASSES_ROOT;
Reg.OpenKey('http\shell\open\command', false);
Reg.WriteString('', Path);
Reg.CloseKey;
finally
Reg.Free;
end;
end;
Dann kommt mir eins spanisch vor:
Code:
Reg.WriteString('', Path);
dazu steht in der Delphi-Hilfe:
Zitat:
Die Methode speichert einen String-Wert in einem bestimmten Datenwert, der dem aktuellen Schlüssel zugeordnet ist.
procedure WriteString(const Name, Value: String);
Beschreibung
Mit WriteString wird ein String-Wert in einem Datenwert gespeichert, der dem aktuellen Schlüssel zugeordnet ist.
Der String-Parameter Name enthält den Namen des Datenwertes, in dem die Daten gespeichert werden sollen. Ist der Name bereits vorhanden, wird dessen aktueller Wert überschrieben. Andernfalls wird der Name neu erzeugt.
Der Parameter Value ist ein String, der in der Registrierung gespeichert werden soll.
Kuck dir insbesondere mal den hervorgehobenen Teil an. Du sagst dem Programm ja gar nicht, wo er den Wertz Pfad hinschreiben soll.
ist doch genau wie mit ini-Dateien:
[Section]
Schluessel=Wert
Wen ich das jetzt richtig interpretiere, gibst du ihm kein Schlüssel mit.