Monikers de classe

Bien que les classes soient généralement identifiées directement avec les CLSID pour des fonctions telles que CoCreateInstance ou CoGetClassObject, les classes peuvent également être identifiées avec un moniker appelé moniker de classe. Les monikers de classe se lient à l’objet de classe de la classe pour laquelle ils sont créés.

La possibilité d’identifier des classes avec un moniker prend en charge des opérations utiles qui sont autrement peu complexes. Par exemple, les monikers de fichier pris en charge traditionnellement la liaison enrichie uniquement à la classe associée à la classe de fichier qu’ils ont référencée ; Un moniker à un fichier Excel est lié à un instance d’un objet Excel, et un moniker à une image GIF est lié à un instance du gestionnaire GIF actuellement inscrit. Un moniker de classe vous permet d’indiquer la classe que vous souhaitez utiliser pour manipuler un fichier via la composition avec un moniker de fichier. Un moniker de classe pour une classe de graphique 3D composée avec un moniker dans un fichier Excel génère un moniker qui se lie à un instance de l’objet de graphique 3D et initialise l’objet avec le contenu du fichier Excel.

Les monikers de classe sont donc les plus utiles dans la composition avec d’autres types de monikers, tels que les monikers de fichier ou les monikers d’élément.

Les monikers de classe peuvent également être composés à droite des monikers prenant en charge la liaison à l’interface IClassActivator . Lorsqu’il est composé de cette manière, IClassActivator donne simplement accès à l’objet de classe et aux instances de la classe via IClassActivator::GetClassObject. Les monikers de classe peuvent être identifiés via IMoniker::IsSystemMoniker, qui retourne MKSYS_CLASSMONIKER dans pdwMksys.

Les programmeurs créent généralement des monikers de classe à l’aide de la fonction CreateClassMoniker ou via MkParseDisplayName. (Pour plus d’informations, consultez IMoniker::P arseDisplayName .)

Anti-monikers

Monikers composites

Monikers de fichier

Monikers d’élément

Monikers pointeurs