Partager via


Clé ProgID indépendante de la version

Associe un ProgID à un CLSID. Cette clé est utilisée pour déterminer la dernière version d’une application objet.

Entrée de Registre

HKEY_LOCAL_MACHINE\SOFTWARE\Classes
   <version-independent ProgID>
      CurVer = ProgID

Notes

La cléHKEY_LOCAL_MACHINE\SOFTWARE\Classescorrespond à la clé HKEY_CLASSES_ROOT, qui a été conservée pour assurer la compatibilité avec les versions antérieures de COM.

Le format de <ProgID> indépendant de la version est <program>.<,> séparés par des points, aucun espace et aucun numéro de version. Le ProgID indépendant de la version, comme le ProgID, peut être inscrit avec un nom lisible par l’utilisateur.

ProgID est le ProgID de la dernière version installée de la classe.

Les applications doivent inscrire un identificateur programmatique indépendant de la version sous la clé ProgID indépendante de la version. Le ProgID indépendant de la version fait référence à la classe de l’application et ne change pas de version en version, mais reste constant sur toutes les versions, par exemple Microsoft Word Document. Il est utilisé avec les langages de macro et fait référence à la version actuellement installée de la classe de l’application. Le ProgID indépendant de la version doit correspondre au nom de la dernière version de l’application objet.

Par exemple, le ProgID indépendant de la version est utilisé lorsqu’une application conteneur crée un graphique ou un tableau avec un bouton de barre d’outils. Dans ce cas, l’application peut utiliser le ProgID indépendant de la version pour déterminer la dernière version de l’application objet nécessaire.

Le ProgID indépendant de la version est stocké et géré uniquement par le code d’application. Lorsqu’elle reçoit le ProgID indépendant de la version, la fonction CLSIDFromProgID retourne le CLSID de la version actuelle.

Vous pouvez utiliser CLSIDFromProgID et ProgIDFromCLSID pour effectuer une conversion entre ces deux représentations.

Vous pouvez utiliser IOleObject::GetUserType ou OleRegGetUserType pour remplacer l’identificateur par une chaîne affichable.

Si aucun gestionnaire personnalisé n’est utilisé, l’entrée doit être définie sur OLE32.DLL, comme illustré dans l’exemple suivant :

HKEY_CLASSES_ROOT\CLSID\{00000402-0000-0000-C000-000000000046}
   InprocHandler = ole32.dll

CLSIDFromProgID

ProgIDFromCLSID

<ProgID> Key