Heim >Backend-Entwicklung >C++ >Wie verknüpfe ich eine Dateierweiterung mit meiner ausführbaren C#-Datei?

Wie verknüpfe ich eine Dateierweiterung mit meiner ausführbaren C#-Datei?

DDD
DDDOriginal
2025-01-20 16:19:09996Durchsuche

How to Associate a File Extension with Your C# Executable?

Verknüpfen einer Dateierweiterung mit einer ausführbaren Datei in C#

Nachdem Benutzer der aktuellen ausführbaren Datei eine Dateierweiterung zugeordnet haben, können sie die Datei im Explorer öffnen und Ihr Programm automatisch ausführen, indem sie die Datei als Argument verwenden. In diesem Artikel erfahren Sie, wie Sie dies in C# durch Bearbeiten von Registrierungsschlüsseln tun.

Lösung:

Während C# über keine dedizierte API zum Verwalten von Dateizuordnungen verfügt, können Sie die Funktionen zur Registrierungsmanipulation nutzen. Bei diesem Vorgang wird ein bestimmter Schlüssel in der Registrierung geändert:

  1. HKEY_CLASSES_ROOT-Unterschlüssel: Erstellen Sie einen Schlüssel unter HKEY_CLASSES_ROOT, dessen Name auf die gewünschte Dateierweiterung eingestellt ist (z. B. .txt). Weisen Sie den Standardwert dieses Schlüssels einem eindeutigen Namen zu, der den Dateityp darstellt, z. B. Acme.TextFile.
  2. Standardsymbolschlüssel: Erstellen Sie unter HKEY_CLASSES_ROOT einen weiteren Schlüssel mit einem Namen, der einem eindeutigen Dateitypnamen zugewiesen ist (z. B. Acme.TextFile). Fügen Sie einen Unterschlüssel namens DefaultIcon hinzu und legen Sie seinen Standardwert auf den Dateipfad des Symbols für den gewünschten Dateityp fest.
  3. Kontextmenüaktionen: Damit Aktionen im Explorer-Kontextmenü angezeigt werden können, erstellen Sie einen Unterschlüssel mit dem Namen „Shell“ unter dem eindeutigen Dateitypschlüssel (Acme.TextFile). Fügen Sie Unterschlüssel für jede Aktion hinzu und legen Sie den Standardwert für jeden Unterschlüssel auf den Pfad zur ausführbaren Datei fest, gefolgt von einem Leerzeichen und %1 (dem Platzhalter für den Dateipfad).

Beispiel:

Die folgende Registrierungsdatei verknüpft die TXT-Datei mit EmEditor, legt das Symbol fest und definiert Öffnungs- und Druckvorgänge:

<code>[HKEY_CLASSES_ROOT\.txt]
@="emeditor.txt"

[HKEY_CLASSES_ROOT\emeditor.txt]
@="Text Document"

[HKEY_CLASSES_ROOT\emeditor.txt\DefaultIcon]
@="%SystemRoot%\SysWow64\imageres.dll,-102"

[HKEY_CLASSES_ROOT\emeditor.txt\shell]

[HKEY_CLASSES_ROOT\emeditor.txt\shell\open]

[HKEY_CLASSES_ROOT\emeditor.txt\shell\open\command]
@="\"C:\Program Files\EmEditor\EMEDITOR.EXE\" \"%1\""

[HKEY_CLASSES_ROOT\emeditor.txt\shell\print]

[HKEY_CLASSES_ROOT\emeditor.txt\shell\print\command]
@="\"C:\Program Files\EmEditor\EMEDITOR.EXE\" /p \"%1\""</code>

Durch die Implementierung dieser Registrierungsänderungen können Sie Dateierweiterungen erfolgreich mit ausführbaren Dateien verknüpfen und so ein nahtloses Benutzererlebnis beim Öffnen und interaktiven Verwenden der Datei bieten.

Das obige ist der detaillierte Inhalt vonWie verknüpfe ich eine Dateierweiterung mit meiner ausführbaren C#-Datei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn