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 方法,但所需的中繼資料已存在於記憶體中,而非磁碟的檔案中。
如果目標記憶體區域不包含 Common Language Runtime (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