IMetaDataDispenser::OpenScope 方法 (rometadataapi.h)

从磁盘打开现有文件,并将其元数据映射到内存中,以便导入 (读取) 。

语法

HRESULT OpenScope(
  [in]  LPCWSTR  szScope,
  [in]  DWORD    dwOpenFlags,
  [in]  REFIID   riid,
  [out] IUnknown **ppIUnk
);

parameters

[in] szScope

要打开的文件的名称。 文件必须包含公共语言运行时 (CLR) 元数据。

[in] dwOpenFlags

指定 (读取的模式,等等,) 打开。 这是 CorOpenFlags 枚举的值。 只能从文件导入 (读取) ,而不能 (向其发出写入) 。

[in] riid

要返回的所需元数据接口的 IID;调用方将使用 接口导入 (读取) 元数据。

riid 的有效值包括IID_IUnknownIID_IMetaDataImportIID_IMetaDataImport2IID_IMetaDataAssemblyImportIID_IMetaDataTablesIID_IMetaDataTables2

[out] ppIUnk

指向返回的接口的指针。

返回值

如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

可以使用“导入”接口之一的方法查询元数据的内存中副本。 如果目标文件不包含 CLR 元数据,则 OpenScope 方法将失败。

要求

   
目标平台 Windows
标头 rometadataapi.h

请参阅

IMetaDataDispenser