IMetaDataImport::FindMember メソッド

指定した Type で囲まれ、指定した名前とメタデータ シグネチャを持つ、フィールドまたはメソッドの MemberDef トークンへのポインターを取得します。

HRESULT FindMember (
   [in]  mdTypeDef         td,
   [in]  LPCWSTR           szName, 
   [in]  PCCOR_SIGNATURE   pvSigBlob, 
   [in]  ULONG             cbSigBlob, 
   [out] mdToken           *pmb
);

パラメーター

  • td
    [入力] 検索するメンバーを囲むクラスまたはインターフェイスの TypeDef トークン。 この値が mdTokenNil の場合は、グローバル変数またはグローバル関数について検索が実行されます。

  • szName
    [入力] 検索するメンバーの名前。

  • pvSigBlob
    [入力] メンバーのバイナリ メタデータ シグネチャへのポインター。

  • cbSigBlob
    [入力] pvSigBlob のサイズ (バイト単位)。

  • pmb
    [出力] 一致する MemberDef トークンへのポインター。

解説

検索するメンバーを囲むクラスまたはインターフェイス (td)、メンバーの名前 (szName)、および必要に応じてシグネチャ (pvSigBlob) を指定します。 クラスまたはインターフェイス内に同じ名前を持つ複数のメンバーが存在することがあります。 その場合は、シグネチャを渡して一意に一致するメンバーを特定します。

シグネチャは特定のスコープにバインドされるため、現在のスコープで生成されたシグネチャを FindMember に渡す必要があります。 シグネチャには、囲むクラスまたは値の種類を識別するトークンを埋め込むことができます。 トークンは、ローカルの TypeDef テーブルへのインデックスです。 現在のスコープ外のコンテキストでランタイム シグネチャを作成することや、そのシグネチャを入力として使用して FindMember に入力できません。

FindMember は、クラスまたはインターフェイスで直接定義されたメンバーのみを検索し、継承メンバーは検索しません。

メモメモ

FindMember はヘルパー メソッドです。FindMember は、IMetaDataImport::FindMethod を呼び出し、一致するメンバーが見つからない場合は、IMetaDataImport::FindField を呼び出します。

必要条件

プラットフォーム : 「.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

参照

参照

IMetaDataImport インターフェイス

IMetaDataImport2 インターフェイス