Eigene Dateiendung die wie .bat behandelt werden soll
Also ich möchte eine Dateiendung Registrieren die wie .bat behandelt wird! Das ganze habe ich mit Delphi gemacht ich habe auch einen Code im Internet gefunden aber jetzt kommt der Fehler! Als wert muss ich ja eingeben mit welchem programm es gestartet werden soll.. also mit cmd.exe das funktioniert nicht wie ich bemerkt hab also habe ich in der registry geschaut wie Windows .bat registriert hat
Hier mal der code von Delphi
Quelle: http://www.delphipraxis.net/post166715.html
So jetzt möchte ich wissen mit welchem parameter ich die cmd.exe ausführen muss das es eine datei wie ein batchscript behandelt
wenn ich manuell die werte von .bat bei meiner endung eingebe kommt die meldung "xyz.test ist keine gültige win32 anwendung"
deswegen habe ich es aufgegeben die standartwerte zu nutzen
kann ich meine dateiendung irgendwie mit .bat verknüpfen? Das ganze muss in delphi einbaubar sein!
[Edit Biber] Code in Code-Tags gesetzt. [/Edit]
Hier mal der code von Delphi
function InstallExt(Extension, ExtDescription, FileDescription,
OpenWith, ParamString: String; IconIndex: Integer): Boolean;
var
Reg: TRegistry;
begin
Reg := TRegistry.Create;
try
try
with Reg do
begin
RootKey := HKEY_CLASSES_ROOT;
OpenKey(Extension, True);
WriteString('', ExtDescription);
CloseKey;
OpenKey('\' + ExtDescription, True);
WriteString('', FileDescription);
CloseKey;
OpenKey('DefaultIcon', True);
WriteString('', OpenWith + ','+IntToStr(IconIndex));
CloseKey;
OpenKey('\' + ExtDescription + '\Shell\Open\Command', True);
WriteString('', '"' + OpenWith + '" "' + ParamString + '"');
CloseKey;
end;
Result := True;
except
Result := False;
end;
finally
Reg.Free;
end;
end;
Begin
InstallExt('.test', 'test-Datei', 'test', 'C:\Windows\System32\cmd.exe', '%1',0);
end.
Quelle: http://www.delphipraxis.net/post166715.html
So jetzt möchte ich wissen mit welchem parameter ich die cmd.exe ausführen muss das es eine datei wie ein batchscript behandelt
wenn ich manuell die werte von .bat bei meiner endung eingebe kommt die meldung "xyz.test ist keine gültige win32 anwendung"
deswegen habe ich es aufgegeben die standartwerte zu nutzen
kann ich meine dateiendung irgendwie mit .bat verknüpfen? Das ganze muss in delphi einbaubar sein!
[Edit Biber] Code in Code-Tags gesetzt. [/Edit]
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 110788
Url: https://administrator.de/contentid/110788
Ausgedruckt am: 23.11.2024 um 02:11 Uhr
1 Kommentar
Hallo!
Nein, das geht nicht. Es sei denn, Du schreibst ein eigenes Stabelverarbeitungsprogramm.
Cmd.Exe oder Command.Com prüft intern, ob es sich um eine ausführbare Datei handelt.
Dazu gehören nur *.com, *.exe und *.bat als Stapelverarbeitungsprogramm.
Gruß Dieter
Nein, das geht nicht. Es sei denn, Du schreibst ein eigenes Stabelverarbeitungsprogramm.
Cmd.Exe oder Command.Com prüft intern, ob es sich um eine ausführbare Datei handelt.
Dazu gehören nur *.com, *.exe und *.bat als Stapelverarbeitungsprogramm.
Gruß Dieter