IMetaDataEmit::DefineTypeDef, méthode
Crée une définition de type pour un type de Common Language Runtime, puis obtient un jeton de métadonnées pour cette définition de type.
Syntaxe
HRESULT DefineTypeDef (
[in] LPCWSTR szTypeDef,
[in] DWORD dwTypeDefFlags,
[in] mdToken tkExtends,
[in] mdToken rtkImplements[],
[out] mdTypeDef *ptd
);
Paramètres
szTypeDef
[in] Nom du type en Unicode.
dwTypeDefFlags
[in] Attributs TypeDef
. Il s’agit d’un masque de bits de valeurs CoreTypeAttr
.
tkExtends
[in] Jeton de la classe de base. Il doit s’agir d’un mdTypeDef
ou d’un jeton mdTypeRef
.
rtkImplements
[in] Tableau de jetons qui spécifient les interfaces que cette classe ou cette interface implémente.
ptd
[out] Jeton mdTypeDef
affecté.
Notes
Un indicateur dans dwTypeDefFlags
spécifie si le type créé est un type référence de système de type commun (CTS, Common Type System) (classe ou interface) ou un type de valeur CTS.
Selon les paramètres fournis, cette méthode a éventuellement pour effet de créer aussi un enregistrement mdInterfaceImpl
pour chaque interface héritée ou implémentée par ce type. Toutefois, cette méthode ne retourne aucun de ces jetons mdInterfaceImpl
. Si un client veut ajouter ou modifier un jeton mdInterfaceImpl
ultérieurement, il doit utiliser l’interface IMetaDataImport
pour les énumérer. Si vous voulez utiliser la sémantique COM de l’interface [default]
, vous devez fournir l’interface par défaut comme premier élément dans rtkImplements
. Un attribut personnalisé défini sur la classe va indiquer que la classe a une interface par défaut (qui est toujours supposée être le premier jeton mdInterfaceImpl
déclaré pour la classe).
Chaque élément du tableau rtkImplements
contient un jeton mdTypeDef
ou mdTypeRef
. Le dernier élément du tableau doit être mdTokenNil
.
Spécifications
Plateformes : Consultez Configuration requise.
En-tête : Cor.h
Bibliothèque : Utilisée comme ressource dans MSCorEE.dll
Versions de .NET Framework : Disponible à partir de la version 1.0