Delen via


Klasse Monikers

Hoewel klassen doorgaans rechtstreeks worden geïdentificeerd met CLSID's voor functies zoals CoCreateInstance of CoGetClassObject, kunnen klassen nu ook worden geïdentificeerd met een moniker genaamd een klasse moniker. Klasse monikers binden het klasseobject van de klasse waarvoor ze worden gemaakt.

De mogelijkheid om klassen te identificeren met een moniker ondersteunt nuttige bewerkingen die anders onhandig zijn. Bestands monikers ondersteunden bijvoorbeeld traditioneel alleen uitgebreide bindingen met de klasse die aan de klasse van het bestand waarnaar wordt verwezen; een moniker naar een Excel-bestand zou binden aan een exemplaar van een Excel-object en een moniker aan een GIF-afbeelding zou binden aan een exemplaar van de momenteel geregistreerde GIF-handler. Met een klasse-moniker kunt u aangeven welke klasse u wilt gebruiken om een bestand te bewerken via samenstelling met een bestands moniker. Een klasse moniker voor een 3D-grafiekklasse die is samengesteld met een moniker aan een Excel-bestand levert een moniker op die wordt gekoppeld aan een exemplaar van het 3D-grafiekobject en het object initialiseert met de inhoud van het Excel-bestand.

Klasse monikers zijn daarom het nuttigst in samenstelling met andere soorten monikers, zoals bestands monikers of item monikers.

Klasse monikers kunnen ook worden samengesteld aan de rechterkant van monikers die binding met de IClassActivator interface ondersteunen. Wanneer deze op deze manier is samengesteld, geeft IClassActivator eenvoudig toegang tot het klasseobject en exemplaren van de klasse via IClassActivator::GetClassObject. Klasse monikers kunnen worden geïdentificeerd via IMoniker::IsSystemMoniker, die MKSYS_CLASSMONIKER retourneert in pdwMksys.

Programmeurs maken doorgaans klasse monikers met behulp van de functie CreateClassMoniker of via MkParseDisplayName. (Zie IMoniker::P arseDisplayName voor meer informatie.)

anti-monikers

samengestelde monikers

bestands monikers

item monikers

Pointer Monikers