Partager via


IMetaDataDispenser::DefineScope Method

Crée une zone en mémoire dans laquelle vous pouvez créer de nouvelles métadonnées.

Syntax

HRESULT DefineScope (
    [in]  REFCLSID    rclsid,
    [in]  DWORD       dwCreateFlags,
    [in]  REFIID      riid,
    [out] IUnknown    **ppIUnk
);

Parameters

rclsid
[in] CLSID de la version des structures de métadonnées à créer.

dwCreateFlags
[in] Indicateurs qui spécifient des options.

riid
[in] IID de l’interface de métadonnées souhaitée à retourner ; l’appelant utilisera l’interface pour créer les nouvelles métadonnées.

La valeur de riid doit spécifier l’une des interfaces « émettre ». Les valeurs valides sont IID_IMetaDataEmit, IID_IMetaDataAssemblyEmitou IID_IMetaDataEmit2.

ppIUnk
[out] Pointeur vers l’interface retournée.

Remarks

DefineScope crée un ensemble de tables de métadonnées en mémoire, génère un GUID unique (identificateur de version de module ou MVID) pour les métadonnées et crée une entrée dans la table de modules pour l’unité de compilation émise.

Vous pouvez attacher des attributs à l’étendue des métadonnées dans son ensemble à l’aide de la méthode IMetaDataEmit ::SetModuleProps ou IMetaDataEmit ::D efineCustomAttribute , le cas échéant.

Requirements

Plateforme: Consultez les systèmes d’exploitation pris en charge par .NET.

Header: Cor.h

Library: CorGuids.lib

See also