Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ruft einen Verweis auf eine Assembly ab, auf die nicht von der ICLRAssemblyReferenceList verwiesen wird, die von IHostAssemblyManager::GetNonHostStoreAssemblies zurückgegeben wird. Die Common Language Runtime (CLR) ruft für jede Assembly auf ProvideAssembly , die nicht in der Liste angezeigt wird.
Syntax
HRESULT ProvideAssembly (
[in] AssemblyBindInfo *pBindInfo,
[out] UINT64 *pAssemblyId,
[out] UINT64 *pHostContext,
[out] IStream **ppStmAssemblyImage,
[out] IStream **ppStmPDB
);
Parameter
pBindInfo [in] Ein Zeiger auf eine AssemblyBindInfo-Instanz , die vom Host verwendet wird, um bestimmte Bindungsmerkmale zu bestimmen, einschließlich des Vorhandenseins oder Fehlens einer Versionsverwaltungsrichtlinie und der Assembly, an die eine Bindung hergestellt werden soll.
pAssemblyId [out] Ein Zeiger auf einen eindeutigen Bezeichner für die angeforderte Assembly für diese IStream.
pHostContext [out] Ein Zeiger auf hostspezifische Daten, die verwendet werden, um den Nachweis der angeforderten Assembly zu ermitteln, ohne dass ein Plattformaufruf erforderlich ist.
pHostContext entspricht der HostContext Eigenschaft der verwalteten Assembly Klasse.
ppStmAssemblyImage [out] Ein Zeiger auf die Adresse eines IStream , das das zu ladende portable ausführbare Image (PE) enthält, oder null, wenn die Assembly nicht gefunden werden konnte.
ppStmPDB [out] Ein Zeiger auf die Adresse eines IStream Elements, das die Informationen zum Programmdebugging (PDB) enthält, oder null, wenn die PDB-Datei nicht gefunden wurde.
Rückgabewert
| HRESULT | Beschreibung |
|---|---|
| S_OK |
ProvideAssembly erfolgreich zurückgegeben. |
| HOST_E_CLRNOTAVAILABLE | Die CLR wurde nicht in einen Prozess geladen, oder die CLR befindet sich in einem Zustand, in dem verwalteter Code nicht ausgeführt oder der Aufruf erfolgreich verarbeitet werden kann. |
| HOST_E_TIMEOUT | Timeout des Anrufs. |
| HOST_E_NOT_OWNER | Der Aufrufer besitzt die Sperre nicht. |
| HOST_E_ABANDONED | Ein Ereignis wurde abgebrochen, während ein blockierter Thread oder eine Faser darauf wartete. |
| E_FAIL | Unbekannter katastrophaler Fehler. Wenn eine Methode E_FAIL zurückgibt, kann der CLR nicht mehr innerhalb des Prozesses verwendet werden. Nachfolgende Aufrufe von Hostingmethoden geben HOST_E_CLRNOTAVAILABLE zurück. |
| COR_E_FILENOTFOUND (0x80070002) | Die angeforderte Assembly konnte nicht gefunden werden. |
| E_NOT_SUFFICIENT_BUFFER | Die angegebene pAssemblyId Puffergröße ist nicht groß genug, um den Bezeichner zu enthalten, den der Host zurückgeben möchte. |
Bemerkungen
Der vom Host zurückgegebene pAssemblyId Identitätswert wird angegeben. Bezeichner müssen innerhalb der Lebensdauer eines Prozesses eindeutig sein. Der CLR verwendet diesen Wert als eindeutigen Bezeichner für den Datenstrom. Er überprüft jeden Wert anhand der Werte, pAssemblyId die von anderen Aufrufen ProvideAssemblyzurückgegeben werden. Wenn der Host denselben pAssemblyId Wert für einen anderen IStreamzurückgibt, überprüft die CLR, ob der Inhalt dieses Datenstroms bereits zugeordnet wurde. Wenn ja, lädt die Laufzeit die vorhandene Kopie des Bilds, anstatt eine neue zuzuordnen.
Anforderungen
Plattformen: Informationen finden Sie unter Systemanforderungen.
Kopfball: MSCorEE.h
Bibliothek: In MSCorEE.dll als Ressource enthalten
.NET Framework-Versionen: Verfügbar seit 2.0