Registry - Gibts es einen Eintrag für ALLE Dateiendungen?

Spagetti_Eis

Grünschnabel
Hallo,

ich möchte mein C++ MFC Programm über das Kontextmenü ausführen (rechtsklick auf Datei).

Ich habe es schon geschafft, daß es durch folgende Einträge in der Registry für Word-Dokumente ausgeführt wird (kann man auch über Explorer - Extras - Ordneroptionen einstellen):
Code:
[HKEY_CLASSES_ROOT\Word.Document.8\shell\test]
@="test starten"
[HKEY_CLASSES_ROOT\Word.Document.8\shell\test\command]
@="D:\\irehet\\test\\Debug\\test.exe s %0"
Weiß jemand ob es einen Eintrag in der Registry gibt, bei dem man ALLE Dateitypen anspricht und nicht nur Word-Dokument :confused:
 
Es gibt einen Unknown-Eintrag, der aufgerufen wird, wenn die Endung nicht registriert ist. Das habe ich mal mit meinem Lieblingstexteditor TextPad verknüpft. Du bekommst dann alle nicht registrierten Dateien damit aufgemacht.
 
Ah danke - das hilft schon weiter.

Gibts es aber auch einen Eintrag für alle bekannte Dateitypen (wie .doc .txt .dll etc.)? Oder muß ich wirklich bei allen einzeln die Registrykeys ergänzen?

Als Info: Ich hab ein Programm, das Dateiinhalte verschlüsselt, geschrieben und das soll auf auf jeden Dateityp anwendbar sein.
 
Momente mal, du willst auf Doppelklick etwas machen oder auf Rechtsklick im Menü einen Punkt?

Auf Rechtsklick musst du einen ShellContext-Handler bauen (eine DLL die sich registrieren muss), dann kannst du das Kontextmenü abändern. Ist mächtig komplex.
 
Hm,
für einzelne Dateitypen is das garnicht so schwer - einfach im Explorer unter Extras - Ordneroptionen den gewünschten Dateityp auswählen - dann Erweitert klicken und eine neue Aktion hinzufügen (z.B. das Ausführen eines Programms mit %1 damit der markierte Dateiname übergeben wird). Dann werden automatisch in der Registry die oben genannten Keys und Values eingefügt.

Auch für alle Dateien eines Verzeichnisses hab ich´s schon geschafft (wenn ich im Explorer einen rechtsklick auf ein Verzeichnis mache) - da gibts in der Registry den Eintrag "directory" und da funktioniert das ganz ähnlich.

Für unbekannte Dateitypen klappts jetzt auch.

Nur ob es einen Eintrag für alle Dateitypen gibt, weiß ich nicht. Wäre schön, wenn es so was gäbe...
 
Hab das Problem gelöst! :eek:

Um ein Programm über das Kontext-Menü für alle Dateitypen starten zu können muß man folgende Einträge in der Registry vornehmen:

Code:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell]

[HKEY_CLASSES_ROOT\*\shell\test]
@="test starten"

[HKEY_CLASSES_ROOT\*\shell\test\command]
@="D:\\irehet\\test\\Debug\\test.exe %1"
Trotzdem vielen Dank für eure Hilfe.
 
Zurück