IMetaDataDispenser::OpenScopeOnMemory 方法
打开包含现有元数据的内存区域。 即,此方法将打开一个将现有数据视为元数据的指定内存区域。
HRESULT OpenScopeOnMemory (
[in] LPCVOID pData,
[in] ULONG cbData,
[in] DWORD dwOpenFlags,
[in] REFIID riid,
[out] IUnknown **ppIUnk
);
参数
pData
[in] 一个指定内存区域的起始地址的指针。cbData
[in] 内存区域的大小(以字节为单位)。dwOpenFlags
[in] 一个 CorOpenFlags 枚举值,用于指定打开模式(读取、写入等)。riid
[in] 要返回的所需元数据接口的 IID;调用方将使用该接口导入(读取)或发出(写入)元数据。riid 的值必须指定一个“导入”或“发出”接口。 有效值包括 IID_IMetaDataEmit、IID_IMetaDataImport、IID_IMetaDataAssemblyEmit、IID_IMetaDataAssemblyImport、IID_IMetaDataEmit2 或 IID_IMetaDataImport2。
ppIUnk
[out] 一个指向返回的接口的指针。
备注
可以查询也可以添加的元数据的内存中副本,其中,查询方法来自“导入”接口之一,添加方法来自“发出”接口之一。
OpenScopeOnMemory 方法与 IMetaDataDispenser::OpenScope 方法类似,只是其相关元数据已在内存中存在,而不在磁盘上的文件中。
如果内存中的目标区域不包含公共语言运行时 (CLR) 元数据,OpenScopeOnMemory 方法将失败。
要求
**平台:**请参见 .NET Framework 系统要求。
**头文件:**Cor.h
**库:**在 MsCorEE.dll 中用作资源
**.NET Framework 版本:**4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0