Freigeben über


IMetaDataEmit::DefineTypeDef-Methode

Erstellt eine Typdefinition für einen Common Language Runtime-Typ und ruft das Metadatentoken für die Typdefinition ab.

HRESULT DefineTypeDef ( 
    [in]  LPCWSTR     szTypeDef, 
    [in]  DWORD       dwTypeDefFlags, 
    [in]  mdToken     tkExtends, 
    [in]  mdToken     rtkImplements[], 
    [out] mdTypeDef   *ptd
);

Parameter

  • szTypeDef
    [in] Der Name des Typs in Unicode.

  • dwTypeDefFlags
    [in] TypeDef-Attribute. Dies ist eine Bitmaske aus CoreTypeAttr-Werten.

  • tkExtends
    [in] Das Token der Basisklasse. Er muss entweder ein mdTypeRef-Token oder mdTypeDef-Token sein.

  • rtkImplements
    [in] Ein Array von Token, das die Schnittstellen angibt, die diese Klasse oder Schnittstelle implementiert.

  • ptd
    [out] Das zugewiesene mdTypeDef-Token.

Hinweise

Ein Flag in dwTypeDefFlags gibt an, ob der Typ, der erstellt wird, ein Verweistyp des allgemeinen Typsystems (Klasse oder Schnittstelle) oder ein Werttyp des allgemeinen Typsystems ist.

Abhängig von den angegebenen Parametern kann diese Methode als Nebeneffekt auch einen mdInterfaceImpl-Datensatz für jede Schnittstelle erstellen, die von diesem Typ geerbt oder implementiert wird. Diese Methode gibt jedoch keine dieser mdInterfaceImpl-Token zurück. Wenn ein Client ein mdInterfaceImpl-Token später hinzufügen oder ändern möchte, muss er die IMetaDataImport-Schnittstelle verwenden, um diese aufzulisten. Wenn Sie COM-Semantik der [default]-Schnittstelle verwenden möchten, sollten Sie die Standardschnittstelle als erstes Element in rtkImplements angeben. Ein benutzerdefiniertes Attribut für die Klasse gibt an, dass die Klasse eine Standardschnittstelle aufweist (die immer als erstes mdInterfaceImpl-Token angenommen wird, das für die Klasse deklariert wurde).

Jedes Element des rtkImplements-Arrays enthält ein mdTypeDef- oder mdTypeRef-Token. Das letzte Element im Array muss mdTokenNil sein.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: Cor.h

Bibliothek: als Ressource in MSCorEE.dll verwendet

.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

Siehe auch

Referenz

IMetaDataEmit-Schnittstelle

IMetaDataEmit2-Schnittstelle

Änderungsprotokoll

Datum

Versionsgeschichte

Grund

Juni 2010

Verwendungsdetails wurden hinzugefügt.

Korrektur inhaltlicher Fehler.