Maison >développement back-end >C++ >Comment associer une extension de fichier à votre exécutable C# ?

Comment associer une extension de fichier à votre exécutable C# ?

DDD
DDDoriginal
2025-01-20 16:19:09996parcourir

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

Associer une extension de fichier à un fichier exécutable en C#

Après avoir associé une extension de fichier à l'exécutable actuel, les utilisateurs peuvent ouvrir le fichier dans l'Explorateur et exécuter automatiquement votre programme en utilisant le fichier comme argument. Cet article vous expliquera comment procéder en C# en manipulant les clés de registre.

Solution :

Bien que C# ne dispose pas d'une API dédiée pour gérer les associations de fichiers, vous pouvez profiter des capacités de manipulation du registre. Ce processus consiste à modifier une clé spécifique dans le registre :

  1. Sous-clé HKEY_CLASSES_ROOT : Créez une clé sous HKEY_CLASSES_ROOT avec son nom défini sur l'extension de fichier souhaitée (par exemple .txt). Attribuez la valeur par défaut de cette clé à un nom unique qui représente le type de fichier, tel que Acme.TextFile.
  2. Clé d'icône par défaut : Sous HKEY_CLASSES_ROOT, créez une autre clé avec un nom attribué à un nom de type de fichier unique (par exemple Acme.TextFile). Ajoutez une sous-clé appelée DefaultIcon et définissez sa valeur par défaut sur le chemin de fichier de l'icône pour le type de fichier souhaité.
  3. Actions du menu contextuel : Pour permettre aux actions d'apparaître dans le menu contextuel de l'Explorateur, créez une sous-clé nommée shell sous la clé de type de fichier unique (Acme.TextFile). Ajoutez des sous-clés pour chaque action et définissez la valeur par défaut de chaque sous-clé sur le chemin d'accès au fichier exécutable, suivi d'un espace et de %1 (l'espace réservé du chemin du fichier).

Exemple :

Le fichier de registre suivant associe le fichier .txt à EmEditor, définit l'icône et définit les opérations d'ouverture et d'impression :

<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>

En implémentant ces modifications du registre, vous pouvez associer avec succès des extensions de fichiers à des fichiers exécutables, offrant ainsi une expérience utilisateur transparente pour l'ouverture et l'utilisation interactive du fichier.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn