Share via


IMetaDataDispenser::DefineScope メソッド

新しいメタデータを作成できる新しい領域をメモリ内に作成します。

構文

HRESULT DefineScope (  
    [in]  REFCLSID    rclsid,  
    [in]  DWORD       dwCreateFlags,  
    [in]  REFIID      riid,
    [out] IUnknown    **ppIUnk  
);  

パラメーター

rclsid
[in] 作成されるメタデータ構造のバージョンの CLSID。 .NET Framework バージョン 2.0 の場合、この値は CLSID_CorMetaDataRuntime である必要があります。

dwCreateFlags
[in] オプションを指定するフラグ。 .NET Framework 2.0 の場合、この値は 0 である必要があります。

riid
[in] 返される必要なメタデータ インターフェイスの IID。呼び出し元では、インターフェイスを使用して新しいメタデータの作成を行います。

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

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

解説

DefineScope により、メモリ内メタデータ テーブルのセットが作成され、メタデータの一意の GUID (モジュール バージョン識別子または MVID) が生成され、出力されるコンパイル単位のエントリをモジュール テーブルに作成します。

必要に応じて、 IMetaDataEmit::SetModuleProps または IMetaDataEmit::DefineCustomAttribute メソッドを使用して、メタデータ スコープ全体に属性をアタッチできます。

必要条件

プラットフォーム:システム必要条件に関するページを参照してください。

ヘッダー: Cor.h

ライブラリ: MsCorEE.dll でリソースとして使用されます

.NET Framework のバージョン: 1.0 以降で使用可能

関連項目