Ich erstelle eine Batchdatei, die Informationen verschlüsselt. Ich habe es so eingerichtet, dass die Batchdatei ausgeführt wird, wenn ich mit der rechten Maustaste auf das Objekt klicke und dann auf die Schaltfläche „Test“ klicke.
Ich regedit
habe hinzugefügt
Computer\HKEY_CLASSES_ROOT\*\shell\Test\command
Die Daten des Befehls sind
C:\Users\%username%\Desktop\encrypt.bat
Was muss ich mit den Daten machen (in dem Registrierungsschlüssel, den ich hinzugefügt habe) und als was werden sie in meiner Variable gespeichert?
Antwort1
Sie müssen dem Dateityp das Skript zuordnen, das Sie für diesen Typ starten möchten. Unter Windows basiert dies alles auf der Erweiterung (zumindest unter XP, ich weiß nicht, wie es unter 7 ist, aber ich bezweifle, dass sich das geändert hat). Angenommen, die Erweiterung Ihrer Dateien lautet „.abc“ und Ihre App ist:
c:\program files\dummy\process.bat
(Ich habe die Variable vorerst gelöscht, ich bin nicht sicher, wie sich das in .reg-Dateien verhält)
Bearbeiten Sie einfach eine config.reg-Textdatei, die Folgendes enthält:
Windows Registry Editor Version 5.00
; the extension .abc gets associated with a file type
[HKEY_CLASSES_ROOT\.abc]
@="abc-file"
; the file-type gets a name (that appears in explorer in field "type")
[HKEY_CLASSES_ROOT\abc-file]
@="foo file"
; What will appear in the contextual menu when selecting an .abc file
[HKEY_CLASSES_ROOT\abc-file\shell\cmdname-1]
@="--- Process ! ----"
; What to do with it
; here, %1 is the file given as argument of the script
[HKEY_CLASSES_ROOT\abc-file\shell\cmdname-1\command]
@="\"c:\\program files\\dummy\\process.bat\" \"%1\""
Zum Schluss importieren. Fertig.
Zusätzliche Kommentare:
- Alle seltsamen Anführungszeichen und Backslashs sind da, um eine korrekte Behandlung von Namen mit Leerzeichen zu ermöglichen. Ja, ich weiß, niemand hat Leerzeichen in Dateinamen. Oder doch? Jedenfalls passiert das!
- Sie können natürlich mehrere Befehle für einen Dateityp haben. Kopieren Sie einfach die letzten beiden Schlüssel der .reg-Datei (cmdname-1 ==> cmdname-2).
- Sie können dem gleichen Dateityp auch verschiedene Dateierweiterungen zuordnen. Beispielsweise können HTML-Dateien entweder .htm oder .html haben.
- Sie können Ordnern sogar eine Aktion zuordnen. Ersetzen Sie den Dateityp durch „Ordner“.
- Es kann sinnvoll sein, eine „Deinstallationsfunktion“ bereitzustellen. Erstellen Sie einfach eine weitere Registrierungsdatei und stellen Sie den erstellten Schlüsseln ein „-“ voran.