Types de fichiers

Cette rubrique explique comment créer de nouveaux types de fichiers et comment associer votre application à votre type de fichier et à d’autres types de fichiers bien définis. Les fichiers avec une extension de nom de fichier commun partagée (.doc, .html, etc.) sont du même type. Par exemple, si vous créez un éditeur de texte, vous pouvez utiliser le type de fichier .txt existant. Dans d’autres cas, vous devrez peut-être créer un nouveau type de fichier.

Cette rubrique est organisée comme suit :

Vous trouverez des informations supplémentaires dans les rubriques suivantes :

Types de fichiers publics et privés

Les types de fichiers publics sont également appelés types populaires ou contentieuses, car les applications concurrentes peuvent souhaiter être associées à ces types de fichiers. Les caractéristiques des types de fichiers publics sont les suivantes :

  • Elles sont généralement définies par des corps de normes et/ou sont promues par leurs organisations de définition en tant que formats d’échange.
  • Ils sont souvent échangés entre les ordinateurs et les utilisateurs à des fins diverses.
  • Ils doivent être pris en charge sur de nombreuses plateformes différentes.
  • Les applications de plusieurs fournisseurs sont susceptibles de les gérer.

Voici quelques exemples de types de fichiers considérés comme étant publics : les types de fichiers image .png, .gif, .jpg et .bmp, ainsi que les types audio. wav, .mp3 et. au.

Contrairement aux types de fichiers publics, les types de fichiers privés ou propriétaires ont généralement un format qui est implémenté et interprété par une seule application ou un seul fournisseur. Par conséquent, les types de fichiers privés ne sont généralement pas sujets aux conflits entre les applications. Certains types de fichiers peuvent démarrer en tant que types de fichiers privés, mais deviennent par la suite des types de fichiers publics.

Notes

Windows ne fait pas la différence entre les types de fichiers publics et privés. La distinction est pertinente uniquement pour prendre des décisions sur votre choix d’inscription de type de fichier.

Enregistrement d’un type de fichier

Pour associer le type de fichier à une application existante, localisez le ProgID de l’application dans le registre. Pour associer le type de fichier à une nouvelle application, définissez un ProgID pour votre application. Pour plus d’informations sur la définition d’un nouveau ProgID, consultez identificateurs par programmation.

Les sous-clés d’extension de nom de fichier se présentent sous la forme générale suivante : ProgID d' extension = . Les sous-clés d’extension de nom de fichier sont stockées dans la sous-arborescence _ _ racine de classes HKEY .

Il est important d’inclure le point de début (.) lors de la création de sous-clés de type de fichier dans le registre. Par exemple, si vous souhaitez qu’un type de fichier avec l’extension Short. MYP et l’extension long. MYP-file soit ouvert avec une application appelée MyProgram, utilisez la syntaxe suivante :

HKEY_CLASSES_ROOT
   .myp
      (Default) = ApplicationVendor.MyProgram
   .myp-file
      (Default) = ApplicationVendor.MyProgram
   ApplicationVendor.MyProgram
      (Default) = MyProgram Application

Comme illustré dans l’exemple précédent, si vous inscrivez également une extension de nom de fichier Short (. MYP), vous devez créer une sous-clé pour l’extension longue (fichier. MYP). Pour plus d’informations, consultez gestionnaires de types de fichiers.

Définition des sous-clés facultatives et des attributs d’extension de type de fichier

Les entrées d’extension de type de fichier dans le registre ont plusieurs sous-clés et attributs facultatifs.

Les entrées d’extension de type de fichier utilisées par les associations de fichiers sont décrites dans le tableau suivant. Toutes les valeurs sont du type de Registre _ SZ .

Entrée de Registre Action
Par défaut Définissez la valeur par défaut de la sous-clé d’extension sur le ProgID auquel elle est liée.
Type de contenu Définissez la valeur type de contenu sur le type de contenu MIME du type de fichier.
OpenWithList Ne pas utiliser. cette sous-clé contient une ou plusieurs sous-clés d’application pour les applications qui s’affichent dans l’entrée de la boîte de dialogue ouvrir avec pour le type de fichier et est destinée uniquement à .exe applications sur les systèmes d’exploitation antérieurs à Windows XP. Utilisez OpenWithProgIds à la place.
OpenWithProgIds Cette sous-clé contient une liste d’autres ProgID pour ce type de fichier. les programmes pour ces progid s’affichent dans le menu ouvrir avec et sont disponibles par défaut Windows les applications du windows Store pour le type de fichier. Chaque fois qu’une application prend le contrôle de ce type de fichier en modifiant la valeur par défaut, elle doit également ajouter une entrée à cette liste.
PerceivedType Définissez la valeur PerceivedType sur le PerceivedType auquel le fichier appartient, le cas échéant. cette chaîne n’est pas utilisée par les versions de Windows antérieures à Windows Vista. Pour plus d’informations, consultez types perçus et inscription des applications.

La forme générale d’une sous-clé d’extension de nom de fichier est la suivante. Tous les types d’entrée sont du type de Registre _ SZ .

HKEY_CLASSES_ROOT
   .ext
      (Default) = ProgID.ext.1
      Content Type = MIME content type
      PerceivedType = PerceivedType
      OpenWithProgids
         ProgID2.ext.1
         ProgID3.ext.1
      ProgID.ext.1
         shellnew

Considérations importantes à propos des types de fichiers :

  • La sous-arborescence _ _ racine de classes HKEY est une vue formée en fusionnant les classes de logiciels de l' _ _ utilisateur actuel HKEY \ \ et les classes de logiciel HKEY _ local _ machine \ \

  • En général, la _ _ racine de classes HKEY est destinée à être lue à partir de, mais n’est pas écrite dans. Pour plus d’informations, consultez l’article _ _ racine des classes HKEY .

  • Pour inscrire globalement un type de fichier sur un ordinateur particulier, créez une entrée pour le type de fichier dans la sous-clé de classes de logiciels de l' _ _ ordinateur local HKEY \ \ .

  • Pour que l’inscription d’un type de fichier soit visible pour l’utilisateur actuel uniquement, créez une entrée pour le type de fichier dans la sous-clé de classes de logiciels de la clé HKEY _ Current _ User \ \ .

  • Une application peut fournir sa propre implémentation d’un verbe, tel que Open ou Play, comme indiqué dans l’exemple de Registre suivant.

    HKEY_CLASSES_ROOT
       Applications
          ApplicationName.exe
             shell
                verb
    

    Les sous-clés de la sous-clé de verbe incluent la ligne de commande et la méthode cible de déplacement : Command et dropTarget.

  • Lorsque vous créez ou modifiez une association de fichiers, il est important d’informer le système que vous avez apporté une modification. Pour ce faire, appelez SHChangeNotify et spécifiez l’événement _ ASSOCCHANGED SHCNE . Si vous n’appelez pas SHChangeNotify, la modification peut ne pas être reconnue tant que le système n’a pas été redémarré.

  • Pour récupérer les informations de Registre relatives à une association de fichiers, utilisez l’interface IQueryAssociations . Pour un scénario qui illustre cette procédure, consultez exemple de scénario d’association de fichiers.

Notes

Les sous-clés de registre des applications et des chemins d’application sont utilisées pour enregistrer et contrôler le comportement du système pour le compte des applications. Pour plus d’informations sur cette fonctionnalité, consultez inscription de l’application.

Suppression des informations du registre lors de la désinstallation

Lors de la désinstallation d’une application, les ProgID et la plupart des autres informations de Registre associées à cette application doivent être supprimés dans le cadre de la désinstallation. Toutefois, les applications qui ont pris possession d’un type de fichier (en définissant la valeur par défaut de la sous-clé HKEY. extension _ _ racine du type de fichier \ sur le ProgID de l’application) ne doivent pas tenter de supprimer cette valeur lors de la désinstallation de. Le fait de laisser les données en place pour la valeur par défaut évite de déterminer si une autre application a pris possession du type de fichier et a remplacé la valeur par défaut après l’installation de l’application d’origine. Windows respecte la valeur par défaut uniquement si le progid a trouvé un progid enregistré. Si le ProgID n’est pas inscrit, il est ignoré.

Notez que d’autres informations sur la propriété du type de fichier sont stockées dans la sous-arborescence de l' _ _ utilisateur actuel HKEY et sont également utilisées uniquement lorsque l’application à laquelle elle fait référence est inscrite. Par conséquent, il n’est pas nécessaire de supprimer ces données lors de la désinstallation d’une application.

À titre d’exemple, le code suivant montre l’état du Registre avant la désinstallation d’une application :

HKEY_CLASSES_ROOT
   .mp3
      (Default) = YourProgID
   YourProgID
      shell
         open
            command
               (Default) = yourapp.exe %1

L’exemple suivant montre l’état de ces mêmes entrées de registre après la désinstallation de l’application.

HKEY_CLASSES_ROOT
   .mp3
      (Default) = YourProgID
   YourProgID subkey removed

Types de fichiers prenant en charge les métadonnées ouvertes

dans Windows 7 et versions ultérieures, les types de fichiers suivants prennent en charge les métadonnées ouvertes.

Type de fichier Extensions de nom de fichier
Documents Office 2007 .docx, .xlsx .pptx
Documents Office 97-2003 .doc, .xls .ppt
Recherche enregistrée . search-ms
formats basés sur des médias Windows (ASF) . wmv,. WMA
MP4 (gestionnaire de propriétés) .mp4,. M4A,. m4v,. mp4v,. M4P,. M4B,. 3gp,. 3GPP,. 3GP2,. mov

Inscription de l’application

Fonctionnement des associations de fichiers

Affichage du contenu par type de fichier ou par type

Vérificateur de type de fichier

Gestionnaires de types de fichiers

Identificateurs programmatiques

Types perçus

Tableaux d’association