Compartilhar via


Método IMetaDataDispenser::DefineScope

Cria uma área na memória em que você é possível criar metadados.

Sintaxe

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

Parâmetros

rclsid
[in] O CLSID da versão das estruturas de metadados a serem criadas. Esse valor deve ser CLSID_CorMetaDataRuntime para o .NET Framework versão 2.0.

dwCreateFlags
[in] Sinalizadores que especificam opções. Esse valor deve ser zero para o .NET Framework 2.0.

riid
[in] A 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
[out] O ponteiro da interface retornada.

Comentários

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 de módulos 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.

Requisitos

Plataforma: ver requisitos do sistema.

Cabeçalho: Cor.h

Biblioteca: usada como um recurso na MsCorEE.dll

Versões do .NET Framework: Disponíveis desde a versão 1.0

Confira também