Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Získá odkaz na sestavení, které není odkazováno ICLRAssemblyReferenceList , který je vrácen z IHostAssemblyManager::GetNonHostStoreAssemblies. Modul CLR (Common Language Runtime) volá ProvideAssembly každé sestavení, které se nezobrazuje v seznamu.
Syntaxe
HRESULT ProvideAssembly (
[in] AssemblyBindInfo *pBindInfo,
[out] UINT64 *pAssemblyId,
[out] UINT64 *pHostContext,
[out] IStream **ppStmAssemblyImage,
[out] IStream **ppStmPDB
);
Parametry
pBindInfo [v] Ukazatel na instanci AssemblyBindInfo , kterou hostitel používá k určení určitých vlastností vazby, včetně přítomnosti nebo nepřítomnosti jakékoli zásady správy verzí a které sestavení se má svázat.
pAssemblyId [ven] Ukazatel na jedinečný identifikátor požadovaného sestavení pro toto IStream.
pHostContext [ven] Ukazatel na data specifická pro hostitele, která se používají k určení důkazů požadovaného sestavení bez nutnosti volání vyvolání platformy.
pHostContext
HostContext odpovídá vlastnosti spravované Assembly třídy.
ppStmAssemblyImage [ven] Ukazatel na adresu IStream , která obsahuje přenosnou spustitelné image (PE), která se má načíst, nebo hodnotu null, pokud sestavení nebylo nalezeno.
ppStmPDB [ven] Ukazatel na adresu IStream obsahující informace o ladění programu (PDB) nebo hodnotu null, pokud nebyl nalezen soubor .pdb.
Návratová hodnota
| HRESULT | Description |
|---|---|
| S_OK |
ProvideAssembly byla úspěšně vrácena. |
| HOST_E_CLRNOTAVAILABLE | Modul CLR nebyl načten do procesu nebo clr je ve stavu, ve kterém nemůže úspěšně spustit spravovaný kód nebo zpracovat volání. |
| HOST_E_TIMEOUT | Vypršel časový limit hovoru. |
| HOST_E_NOT_OWNER | Volající zámek nevlastní. |
| HOST_E_ABANDONED | Událost byla zrušena, když na ni čekalo blokované vlákno nebo vlákno. |
| E_FAIL | Došlo k neznámé katastrofické chybě. Když metoda vrátí E_FAIL, CLR již není možné použít v rámci procesu. Následná volání metod hostování vrací HOST_E_CLRNOTAVAILABLE. |
| COR_E_FILENOTFOUND (0x80070002) | Požadované sestavení nebylo možné najít. |
| E_NOT_SUFFICIENT_BUFFER | Velikost vyrovnávací paměti zadaná parametrem pAssemblyId není dostatečně velká, aby držela identifikátor, který chce hostitel vrátit. |
Poznámky
Hodnota identity vrácená hostitelem pAssemblyId je určena. Identifikátory musí být v průběhu životnosti procesu jedinečné. CLR používá tuto hodnotu jako jedinečný identifikátor datového proudu. Kontroluje každou hodnotu s hodnotami vrácenými pAssemblyId jinými voláními ProvideAssembly. Pokud hostitel vrátí stejnou hodnotu pro jinou pAssemblyIdIStream, CLR zkontroluje, zda již byl namapován obsah tohoto datového proudu. Pokud ano, modul runtime načte existující kopii image místo mapování nové kopie.
Požadavky
Platformy: Viz požadavky na systém.
Záhlaví: MSCorEE.h
Knihovna: Zahrnutý jako prostředek v MSCorEE.dll
Verze rozhraní .NET Framework: K dispozici od verze 2.0