Wie verknüpfen Sie die .exe-Dateierweiterung mit einem Programm in Windows?

16

Vor ein paar Jahren habe ich gesehen, wie jemand jemandem einen Streich gespielt hat, indem er die .exeDateierweiterung mit dem Internet Explorer in Verbindung gebracht hat. Dadurch wurde der Internet Explorer jedes Mal geöffnet, wenn die Person ein Programm starten wollte.

Leider habe ich vergessen, wie das gemacht wurde. Ich habe versucht, das Default Programs > Set AssociationsTool "Systemsteuerung" zu verwenden, es wurde jedoch nicht aufgelistet .exe.

Wie könnte man diese Dateizuordnung setzen und, was vielleicht noch wichtiger ist, wie könnte man sie aufheben?

Peter Olson
quelle
Es ist auf einem Batch-Virus Google-Suche
RobotHumans

Antworten:

20

Wenn Sie solche "Streiche" machen, reicht es nicht aus, nur einem schrittweisen Tutorial oder einem Stapelskript zu folgen. Am besten wissen Sie, wie die eigentlichen Daten gespeichert sind - eine spätere Wiederherstellung ist einfacher.

Alle Dateizuordnungen werden in der Registrierung gespeichert, die mit regedit oder reg bearbeitet werden kann . Die Schale sieht für sie unter HKEY_CLASSES_ROOT, die eine fusionierte Ansicht ist HKEY_LOCAL_MACHINE\Software\Classes(systemweit) und HKEY_CURRENT_USER\Software\Classes( vom Benutzer lokal).

  • [ HKEY_CLASS_ROOT]
    • [ .txt]
      • (Standard) = " txtfile" - Zeiger auf einen anderen Schlüssel unter HKCR
    • [ txtfile]
      • (Standard) = " Text Document" - Textbeschreibung wie im Explorer angezeigt
      • [ shell] - die Aktionen für Doppelklick und Kontextmenü
        • (Standard) = (nicht festgelegt) - die Aktion, die beim Doppelklicken verwendet werden soll; standardmäßig " open"
        • [ open]
          • (Standard) = (nicht festgelegt) - Bezeichnung, die im Kontextmenü angezeigt wird; standardmäßig " Open"
          • [ command]
            • (Standard) = " %SystemRoot%\system32\NOTEPAD.EXE %1"

Bei den meisten Erweiterungen verweist der Wert auf einen Dateitypschlüssel unter demselben HKCR. zeigt zum Beispiel auf .HKCR\.extn\(Default).exeHKCR\exefile

(In seltenen Fällen befinden sich jedoch alle Informationen direkt unter dem Schlüssel der Erweiterung und enthalten die Beschreibung. Diese scheinen jedoch sehr selten zu sein - möglicherweise ein Überbleibsel von Windows 9x oder 3.x ...)HKCR\.extn\(Default)

Machen Sie Backups. reg save HKLM\Software\Classes hklm-classes.hivDenken Sie auch daran, dass die Eingabeaufforderung keine Erweiterungen berücksichtigt. Wenn Sie versuchen, ein ausführbares Programm auszuführen, wird es immer ausgeführt, unabhängig davon, wie es benannt wurde oder mit welcher Erweiterung es verknüpft ist.

Grawity
quelle
1
Exportieren Sie natürlich die Registrierung, bevor Sie solche Änderungen vornehmen! :)
HaydnWVN
@ HaydnWVN: reg savekümmert sich darum (und enthält auch Metadaten, die übersprungen reg exportwürden).
Grawity
Ah sorry, hat geantwortet, bevor die Bearbeitung von Make backups veröffentlicht wurde! ;)
HaydnWVN
1
Vergessen Sie nicht, dass das Anzeigen der unformatierten Registrierung die schwierigste Art ist, hier etwas zu tun. Der mitgelieferte Befehlsinterpreter von Microsoft verfügt über FTYPEund ASSOCBefehle, und auf die Dateitypenliste kann auch über Dialogfelder im Windows-Explorer direkt zugegriffen werden .
JdeBP
@JdeBP: AFAIK, Windows Vista hat den Editor im Explorer entfernt - jetzt wird nur noch die Standardaktion ausgewählt. (Ich habe aber nicht tiefer gegraben; benutze immer noch XP hier.) Auch die Grafik regeditgibt einen schönen Überblick.
Grawity
2

Versuche dies:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.exe]
@="exefile"
"Content Type"="application/x-msdownload"

[HKEY_CLASSES_ROOT\.exe\PersistentHandler]
@="{098f2470-bae0-11cd-b579-08002b30bfeb}"
kinokijuf
quelle