Partilhar via


IMetaDataDispenser::DefineScope Method

Cria uma nova área na memória na qual você pode criar novos metadados.

Syntax

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

Parameters

rclsid
[em] O CLSID da versão das estruturas de metadados a serem criadas.

dwCreateFlags
[em] Sinalizadores que especificam opções.

riid
[em] O IID da interface de metadados desejada a ser retornada; O chamador usará a interface para criar os novos metadados.

O valor de riid deve especificar uma das interfaces "emit". Os valores válidos são IID_IMetaDataEmit, IID_IMetaDataAssemblyEmit, ou IID_IMetaDataEmit2.

ppIUnk
[saídas] O ponteiro para a interface retornada.

Remarks

DefineScope cria um conjunto de tabelas de metadados na memória, gera um GUID exclusivo (identificador de versão do módulo, ou MVID) para os metadados e cria uma entrada na tabela do módulo para a unidade de compilação que está sendo emitida.

Você pode anexar atributos ao escopo de metadados como um todo usando o método IMetaDataEmit::SetModuleProps ou IMetaDataEmit::D efineCustomAttribute , conforme apropriado.

Requirements

Plataforma: Consulte Sistemas operacionais suportados pelo .NET.

Header: Cor.h

Library: CorGuids.lib

See also