次の方法で共有


IMetaDataDispenser::OpenScopeOnMemory Method

既存のメタデータを含むメモリ領域を開きます。 つまり、このメソッドは、既存のデータがメタデータとして扱われる指定されたメモリ領域を開きます。

Syntax

HRESULT OpenScopeOnMemory (
    [in]  LPCVOID     pData,
    [in]  ULONG       cbData,
    [in]  DWORD       dwOpenFlags,
    [in]  REFIID      riid,
    [out] IUnknown    **ppIUnk
);

Parameters

pData [in]メモリ領域の開始アドレスを指定するポインター。

cbData [in]メモリ領域のサイズ (バイト単位)。

dwOpenFlags [in]開くモード (読み取り、書き込みなど) を指定する CorOpenFlags 列挙体の値。

riid [in]返される必要なメタデータ インターフェイスの IID。呼び出し元はインターフェイスを使用して、メタデータのインポート (読み取り) または出力 (書き込み) を行います。

riidの値は、"import" または "emit" インターフェイスのいずれかを指定する必要があります。 有効な値は、IID_IMetaDataEmit、IID_IMetaDataImport、IID_IMetaDataAssemblyEmit、IID_IMetaDataAssemblyImport、IID_IMetaDataEmit2、またはIID_IMetaDataImport2です。

ppIUnk [out]返されたインターフェイスへのポインター。

Remarks

メタデータのメモリ内コピーは、いずれかの "インポート" インターフェイスのメソッドを使用してクエリを実行することも、いずれかの "出力" インターフェイスのメソッドを使用して追加することもできます。

OpenScopeOnMemory メソッドは IMetaDataDispenser::OpenScope メソッドに似ていますが、対象のメタデータがディスク上のファイルではなくメモリに既に存在する点が異なります。

メモリのターゲット領域に共通言語ランタイム (CLR) メタデータが含まれていない場合、 OpenScopeOnMemory メソッドは失敗します。

Requirements

プラットホーム:サポートされている .NET オペレーティング システムを参照してください。

Header: Cor.h

Library: CorGuids.lib

See also