Ich habe schon befürchtet, dass ich mit dir in Quellcode sprechen muss, damit du mich verstehst.
Hier mal das Beispiel für Textdateien.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
reg : TRegistry;
s : string;
begin
reg := TRegistry.Create;
if(reg <> nil) then
try
reg.RootKey := HKEY_CLASSES_ROOT;
s := '';
// womit ist der Typ ".txt" verknüpft?
if(reg.OpenKey('.txt',false)) then
try
s := reg.ReadString('');
finally
reg.CloseKey;
end;
// so, gibt´s da was?
if(s <> '') and
(reg.KeyExists(s)) and
// dann öffnen, ...
(reg.OpenKey(s + '\shell\ProtonEdit\command',true)) then
try
// ... & Proton ergänzen
reg.WriteString('','"c:\programme\powertoy\proton.exe" "%1"');
finally
reg.CloseKey;
end;
finally
reg.Free;
end;
end;
Würdest du jetzt das Kontextmenü einer Textdatei aufrufen, dann siehst du nach wie vor die Einträge "Öffnen", "Drucken", usw. Aber ebenfalls dabei ist jetzt auch "ProtonEdit". Ist zwar kein schöner Begriff für´s Menü, aber es geht ja nur um die Idee.
Schönen Gruß an deine Freundin. Die soll dich nicht so hart ... äh ... ran nehmen ...