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
方法将失败。
要求
平台:请参阅系统要求。
标头:Cor.h
库:用作 MsCorEE.dll 中的资源
.NET Framework 版本:自 1.0 起可用