共用方式為


IMetaDataAssemblyImport::FindAssembliesByName Method

使用 Common Language Runtime (CLR) 用來解析參考的標準規則,取得具有指定 szAssemblyName 參數的元件數組。

Syntax

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

Parameters

szAppBase [in]要在其中搜尋指定元件的根目錄。 如果此值設定為 nullFindAssembliesByName 則只會在元件的全域程式集緩存中尋找。

szPrivateBin [in]以分號分隔的子目錄清單(例如,“bin;bin2“),要在其中搜尋元件的根目錄下。 除了預設探查規則中指定的目錄之外,也會探查這些目錄。

szAssemblyName [in]要尋找的元件名稱。 此字串的格式定義於 的 AssemblyName類別參考頁面中。

ppIUnk [out]保存介面指標的 IMetadataAssemblyImport 陣列。

cMax [in]要放在中的 ppIUnk介面指標數目上限。

pcAssemblies [out]傳回的介面指標數目,也就是實際放置於 中的 ppIUnk介面指標數目。

Return Value

HRESULT Description
S_OK FindAssembliesByName 已成功傳回。
S_FALSE 沒有元件。

Remarks

指定元件名稱時, FindAssembliesByName 方法會遵循解析元件參考的標準規則來尋找元件。 (如需詳細資訊,請參閱 運行時間如何找出元件。) FindAssembliesByName 可讓呼叫端設定元件解析程式內容的各個層面,例如應用程式基底和私人搜尋路徑。

方法 FindAssembliesByName 需要在程式中初始化 CLR,才能叫用元件解析邏輯。 因此,您必須先呼叫 CoInitializeEE (傳遞COINITEE_DEFAULT), FindAssembliesByName再呼叫 ,然後接著呼叫 CoUninitializeCor

FindAssembliesByName 會傳回檔案的 IMetaDataImport 指標,其中包含傳入之元件名稱的元件指令清單。 如果未完整指定指定元件名稱(例如,如果未包含版本),可能會傳回多個元件。

FindAssembliesByName 編譯程式通常會在編譯時期嘗試尋找參考的元件。

Requirements

平臺: 請參閱 .NET 支援的作系統

Header: Cor.h

Library: CorGuids.lib

See also