Datei öffnen und bearbeiten mit "öffnen mit.." geht nicht wenn ich meine Exe auswähle
-
Hi
Wie kann ich es schaffen dass, wenn ich mit dem Dialog "Öffnen mit..." meine Exe für das Format auswähle, das dann die Datei in die Exe geladen wird und bearbeitet werden kann?
Habs versucht und es ging nicht..Habe:
WinXP (SP1)
Benutze:
Dev-C++ als CompilerDanke
-
wenn ich das richtig verstanden habe willst du das ein bestimmter dateityp
immer mit deinem Programm geöffnet werden soll...dafür musst du in der registry folgendes machen:
unter HKEY_CLASSES_ROOT einen neuen schlüssel anlegen der den namen der dateiendung hat, z.b. .bmp, .txt oder .jpg.
Bei diesem Schlüssel musst du nun in der zeichenfolge (Standard)
einen namen eingeben, welchen ist egal...Dann machst du noch einen Schlüssel, auch in HKEY_CLASSES_ROOT, der den selben namen hat den du eben bei (Standard) eingetragen hast.
Der (Standard) wert ist in diesem fall eine beschreibung des Dateitypes.In diesem erstellst du zwei unterschlüssel, der eine heißt DefaultIcon und der andere shell.
Der (Standard) wert in DefaultIcon führt zu dem icon den der Dateityp bekommen soll. also entweder direckt zu einem icon oder zu einer dll oder exe.
Z.B.: J:\WinRAR\WinRAR.exe,0Dann erstellst du im shell schlüssel den unterschlüssel open und in dem wiederum den unterschlüssel command.
Der (Standard) wert beim command schlüssel ist womit die datei aufgereufen wird, d.h. mit deinem programm. Also sollte der inhalt "PFADZUDEINEMPROGRAMM" "%1" sein... (mit ""!!!!!!).Nun sollte sich der dateityp immer mit deinem Programm öffnen und sollte auch das richtige icon haben.
MFG
-
ich denk ma eher, dass du die kommandozeilenparameter auslesen muss, da steht dann der dateiname drin
-
Ok, und wie mach ich das??

-
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/getcommandline.asp
oder
http://msdn.microsoft.com/library/en-us/shellcc/platform/shell/reference/functions/commandlinetoargv.asp