Partager via


Types de fichiers

Cette rubrique explique comment créer des 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, et ainsi de suite) 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 sur les rubriques suivantes :

Types de fichiers publics et privés

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

  • Ils sont généralement définis par les organismes de normes et/ou sont promus par leurs organisations 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.

Certains exemples de types de fichiers considérés comme publics sont les types de fichiers image .png, .gif, .jpget .bmp, et les types audio .wav, .mp3et .au. au.

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

Note

Windows ne fait pas la distinction entre les types de fichiers publics et privés. La distinction est pertinente uniquement dans la prise de décisions concernant votre choix d’inscription de type de fichier.

 

Inscription d’un type de fichier

Pour associer le type de fichier à une application existante, localisez l’application ProgID 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 programmatiques.

Les sous-clés d’extension de nom de fichier ont la forme générale suivante : extension=ProgID. Les sous-clés d’extension de nom de fichier sont stockées dans la sous-arborescence HKEY_CLASSES_ROOT.

Il est important d’inclure la période 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 courte .myp et l’extension longue .myp-file soient ouverts 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 court (.myp), vous devez également créer une sous-clé pour l’extension longue (.myp-file). 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 REG_SZ.

Entrée du Registre Action
Faire 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 N’utilisez pas. Cette sous-clé contient une ou plusieurs sous-clés d’application pour les applications qui apparaissent dans le Ouvrir avec entrée de boîte de dialogue pour le type de fichier et est destinée uniquement aux applications .exe sur les systèmes d’exploitation antérieurs à Windows XP. Utilisez plutôt OpenWithProgIds.
OpenWithProgIds Cette sous-clé contient une liste d’autres ProgID pour ce type de fichier. Les programmes de ces ProgID apparaissent dans le menu Ouvrir avec et sont disponibles en tant qu’applications du Windows Store par défaut 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 l’objet PerceivedType auquel appartient le fichier, 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 l’inscription d’application.

 

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 de type REG_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

Les considérations importantes relatives aux types de fichiers sont les suivantes :

  • La sous-arborescence HKEY_CLASSES_ROOT est une vue formée en fusionnant HKEY_CURRENT_USER\Classes\Software et HKEY_LOCAL_MACHINE\Software\Classes

  • En règle générale, HKEY_CLASSES_ROOT est destiné à être lu à partir de mais pas écrit dans. Pour plus d’informations, consultez l’article HKEY_CLASSES_ROOT.

  • Pour inscrire un type de fichier globalement sur un ordinateur particulier, créez une entrée pour le type de fichier dans le HKEY_LOCAL_MACHINE\Software\Classes sous-clé.

  • Pour rendre l’inscription de type de fichier visible uniquement pour l’utilisateur actuel, créez une entrée pour le type de fichier dans la sous-clé HKEY_CURRENT_USER\Software\Classes.

  • Une application peut fournir sa propre implémentation d’un verbe, tel qu’ouvert ou lu, comme illustré 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 drop target : commande et DropTarget.

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

  • Pour récupérer des informations de Registre concernant une association de fichiers, utilisez l’interface IQueryAssociations. Pour un scénario illustrant cette procédure, consultez exemple de scénario d’association de fichiers.

Note

Les chemins d’accès d’application et les sous-clés de Registre applications sont utilisés pour inscrire et contrôler le comportement du système pour le compte des applications. Pour plus d’informations sur cette fonctionnalité, consultez application Registration.

 

Suppression des informations de 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ées 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 du type de fichier HKEY_CLASSES_ROOT\.extension sous-clé sur progID de l’application) ne doivent pas tenter de supprimer cette valeur lors de la désinstallation. Le fait de laisser les données en place pour la valeur Par défaut évite la difficulté de déterminer si une autre application a pris possession du type de fichier et 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 trouvé qu’il existe un ProgID inscrit. Si le ProgID n’est pas inscrit, il est ignoré.

Notez que d’autres informations de propriété de type fichier sont stockées dans la sous-arborescence HKEY_CURRENT_USER et sont également utilisées uniquement lorsque l’application qu’elle référence est inscrite. Par conséquent, ces données n’ont pas besoin d’être supprimées lors de la désinstallation d’une application.

Par exemple, les éléments suivants montrent 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

Le code 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 qui prennent 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
Office 2007 Documents .docx, .xlsx, .pptx
Office 97-2003 Documents .doc, .xls, .ppt
Recherche enregistrée .search-ms
Formats Windows Media (conteneur ASF (Advanced Streaming Format) .wmv, .wma
MP4 (gestionnaire de propriétés) .mp4, .m4a, .m4v, .mp4v, .m4p, .m4b, .3gp, .3gpp, .3gp2, .mov

 

d’inscription d’application

fonctionnement des associations de fichiers

vue de contenu par type de fichier ou type

du vérificateur de type de fichier

gestionnaires de types de fichiers

identificateurs programmatiques

types perçus

Tableaux d’associations