Hallo!
Ich hoffe ich bin hiermit im Richtigen THema...
Ich habe mir eine neue Dateiendung geschaffen (*.icctmp) und mit folgender Funktion mit meinem Programm verknüpft:
Delphi-Quellcode:
function InstallExt(Extension, ExtDescription, FileDescription,
OpenWith, ParamString: string; IconIndex: Integer = 0): Boolean;
var
Reg: TRegistry;
begin
Result := False;
if Extension <> '' then
begin
if Extension[1] <> '.' then
Extension := '.' + Extension;
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_CLASSES_ROOT;
if Reg.OpenKey(Extension, True) then
begin
Reg.WriteString('', ExtDescription);
if Reg.OpenKey('\' + ExtDescription, True) then
begin
Reg.WriteString('', FileDescription);
if Reg.OpenKey('DefaultIcon', True) then
begin
Reg.WriteString('', Format('%s,%d', [OpenWith, IconIndex]));
if Reg.OpenKey('\' + ExtDescription + '\Shell\Open\Command', True) then
begin
Reg.WriteString('', Format('"%s" "%s"', [OpenWith, ParamString]));
Result:=True;
end;
end;
end;
end;
finally
Reg.Free;
end;
end;
end;
Installiert wird diese Endung beim Aufrufen des Programms im oncreate- ereignis mit folgendem Aufruf:
InstallExt('.icctmp', 'ICC Verlauf', 'Gespeicherter ICC Verlauf', ParamStr(0), '"%1"',0);
So nun wird die Dateiendung mit meinem Programm verküpft und wenn ich eine Datei des Typs öffne wird mein Programm auch ganz normal gestartet...nur leider wird mir der Inhalt der Datei nicht angezeigt...
Woran liegt das?