Freigeben über


IMetaDataAssemblyImport::FindAssembliesByName-Methode (rometadataapi.h)

Ruft ein Array von Assemblys mit dem angegebenen Namen unter Verwendung der Standardregeln ab, die von der Common Language Runtime (CLR) zum Auflösen von Verweisen verwendet werden.

Syntax

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

Parameter

[in] szAppBase

Das Stammverzeichnis, in dem nach der angegebenen Assembly gesucht werden soll. Wenn dieser Wert auf NULL festgelegt ist, sucht FindAssembliesByName nur im globalen Assemblycache für die Assembly.

[in] szPrivateBin

Eine Liste von semikolonstrennten Unterverzeichnissen (z. B. "bin; bin2"), unter dem Stammverzeichnis, in dem nach der Assembly gesucht werden soll. Diese Verzeichnisse werden zusätzlich zu den in den Standardüberprüfungsregeln angegebenen Verzeichnissen überprüft.

[in] szAssemblyName

Der Name der zu suchenden Assembly. Das Format dieser Zeichenfolge wird auf der Klassenreferenzseite für AssemblyName definiert.

[out] ppIUnk

Ein Array vom Typ IUnknown, in dem die IMetadataAssemblyImport-Schnittstellenzeiger platziert werden sollen.

[in] cMax

Die maximale Anzahl von Schnittstellenzeigern, die in ppIUnk platziert werden können.

[out] pcAssemblies

Die Anzahl der zurückgegebenen Schnittstellenzeiger. Das heißt, die Anzahl der tatsächlich in ppIUnk platzierten Schnittstellenzeiger.

Rückgabewert

HRESULT BESCHREIBUNG
S_OK FindAssembliesByName wurde erfolgreich zurückgegeben.
S_FALSE Es sind keine Assemblys vorhanden.

Bemerkungen

Bei einem Assemblynamen sucht die FindAssembliesByName-Methode die Assembly, indem sie die Standardregeln zum Auflösen von Assemblyverweisen folgt. FindAssembliesByName ermöglicht es dem Aufrufer, verschiedene Aspekte des Assemblylöserkontexts zu konfigurieren, z. B. die Anwendungsbasis und den privaten Suchpfad.

FindAssembliesByName gibt einen IMetaDataImport-Zeiger auf die Datei zurück, die das Assemblymanifest für den übergebenen Assemblynamen enthält. Wenn der angegebene Assemblyname nicht vollständig ist (z. B. wenn er keine Version enthält), werden möglicherweise mehrere Assemblys zurückgegeben.

FindAssembliesByName wird häufig von einem Compiler verwendet, der versucht, eine Assembly zu finden, auf die zur Kompilierzeit verwiesen wird.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile rometadataapi.h

Weitere Informationen

Imetadataassemblyimport