IMetaDataAssemblyImport::FindAssembliesByName メソッド (rometadataapi.h)

共通言語ランタイム (CLR) で参照を解決するために使用される標準規則を使用して、指定した名前のアセンブリの配列を取得します。

構文

HRESULT FindAssembliesByName(
  [in]  LPCWSTR       szAppBase,
  [in]  LPCWSTR       szPrivateBin,
  [in]  LPCWSTR       szAssemblyName,
  [out] IUnknown * [] ppIUnk,
  [in]  ULONG         cMax,
  [out] ULONG         *pcAssemblies
);

パラメーター

[in] szAppBase

指定したアセンブリを検索するルート ディレクトリ。 この値が null に設定されている場合、 FindAssembliesByName はアセンブリのグローバル アセンブリ キャッシュ内でのみ検索されます。

[in] szPrivateBin

セミコロンで区切られたサブディレクトリの一覧 (例: "bin;bin2") は、アセンブリを検索するルート ディレクトリの下にあります。 これらのディレクトリは、既定のプローブ ルールで指定されているものに加えてプローブされます。

[in] szAssemblyName

検索するアセンブリの名前。 この文字列の形式は、 AssemblyName のクラス参照ページで定義されています。

[out] ppIUnk

IMetadataAssemblyImport インターフェイス ポインターを配置する IUnknown 型の配列。

[in] cMax

ppIUnk に配置できるインターフェイス ポインターの最大数。

[out] pcAssemblies

返されるインターフェイス ポインターの数。 つまり、 ppIUnk に実際に配置されたインターフェイス ポインターの数です。

戻り値

HRESULT 説明
S_OK FindAssembliesByName が正常に返されました。
S_FALSE アセンブリがありません。

解説

アセンブリ名を指定すると、 FindAssembliesByName メソッドはアセンブリ参照を解決するための標準規則に従ってアセンブリを検索します。 FindAssembliesByName を使用すると、呼び出し元は、アプリケーション ベースやプライベート検索パスなど、アセンブリ リゾルバー コンテキストのさまざまな側面を構成できます。

FindAssembliesByName は、渡されたアセンブリ名のアセンブリ マニフェストを含むファイルへの IMetaDataImport ポインターを返します。 所与のアセンブリ名が完全に指定されていない場合 (たとえば、バージョンが含まれていない場合) は、複数のアセンブリが返されることがあります。

FindAssembliesByName は、コンパイル時に参照アセンブリを検索しようとするコンパイラで一般的に使用されます。

要件

要件
対象プラットフォーム Windows
ヘッダー rometadataapi.h

こちらもご覧ください

IMetaDataAssemblyImport