Heim > Backend-Entwicklung > C++ > Wie kann ich Dateierweiterungen programmgesteuert mit ausführbaren Dateien in C# verknüpfen?

Wie kann ich Dateierweiterungen programmgesteuert mit ausführbaren Dateien in C# verknüpfen?

Barbara Streisand
Freigeben: 2025-01-20 16:14:14
Original
475 Leute haben es durchsucht

How Can I Programmatically Associate File Extensions with Executables in C#?

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

C# selbst verfügt nicht über eine integrierte API zum Verwalten von Dateizuordnungen. Sie können jedoch die Registrierungs-API nutzen, um auf die Windows-Registrierung zuzugreifen und diese zu ändern, da Dateizuordnungsinformationen in der Registrierung gespeichert werden.

Um Ihrer ausführbaren Datei eine bestimmte Dateierweiterung zuzuordnen, müssen Sie einen Registrierungsschlüssel unter HKEY_CLASSES_ROOT erstellen.

  1. Erstellen Sie einen Unterschlüssel der Dateierweiterung:

    • Erstellen Sie unter HKEY_CLASSES_ROOT einen Unterschlüssel mit dem Namen der Dateierweiterung (z. B. .txt).
    • Legen Sie den Standardwert dieses Unterschlüssels auf einen eindeutigen Namen für Ihren Dateityp fest, z. B. „Acme.TextFile“.
  2. Dateityp-Unterschlüssel erstellen:

    • Erstellen Sie unter HKEY_CLASSES_ROOT einen Unterschlüssel mit dem im vorherigen Schritt verwendeten Namen (z. B. „Acme.TextFile“).
  3. Standardsymbol festlegen:

    • Fügen Sie einen Unterschlüssel mit dem Namen „DefaultIcon“ unter dem Dateityp-Unterschlüssel hinzu.
    • Legen Sie den Standardwert von „DefaultIcon“ auf den Pfad und Index des zu verwendenden Symbols fest.
  4. Kontextmenü-Aktion hinzufügen:

    • Erstellen Sie einen Unterschlüssel mit dem Namen „Shell“ unter dem Dateityp-Unterschlüssel.

    • Erstellen Sie unter dem Unterschlüssel „Shell“ Unterschlüssel für jede Kontextmenüaktion, die Sie hinzufügen möchten.

    • Setzt den Standardwert jedes Aktionsunterelements auf die folgende Zeichenfolge:

      • "executable_path" "%1"
      • Ersetzen Sie "executable_path" durch den Pfad zur ausführbaren Datei und "%1" durch den Platzhalter für den als Argument übergebenen Dateipfad.

Um beispielsweise eine TXT-Datei mit EmEditor zu verknüpfen, müssen Sie den folgenden Registrierungsschlüssel erstellen:

<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>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich Dateierweiterungen programmgesteuert mit ausführbaren Dateien in C# verknüpfen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage