IMetaDataDispenser::DefineScope Method

在内存中创建一个新区域,可在其中创建新元数据。

Syntax

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

Parameters

rclsid
[in]要创建的元数据结构的版本的 CLSID。

dwCreateFlags
[in]指定选项的标志。

riid
[in]要返回的所需元数据接口的 IID;调用方将使用接口创建新元数据。

必须指定一个“发出”接口的值 riid 。 有效值为 IID_IMetaDataEmitIID_IMetaDataAssemblyEmitIID_IMetaDataEmit2

ppIUnk
[out]指向返回接口的指针。

Remarks

DefineScope 创建一组内存中元数据表,为元数据生成唯一 GUID(模块版本标识符或 MVID),并为所发出的编译单元在模块表中创建一个条目。

可以使用 IMetaDataEmit::SetModulePropsIMetaDataEmit::D efineCustomAttribute 方法将属性作为一个整体附加到元数据范围。

Requirements

平台: 请参阅 .NET 支持的作系统

Header: Cor.h

Library: CorGuids.lib

See also