Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mendapatkan referensi ke rakitan yang tidak direferensikan oleh ICLRAssemblyReferenceList yang dikembalikan dari IHostAssemblyManager::GetNonHostStoreAssemblies. Panggilan ProvideAssembly runtime bahasa umum (CLR) untuk setiap rakitan yang tidak muncul dalam daftar.
Sintaksis
HRESULT ProvideAssembly (
[in] AssemblyBindInfo *pBindInfo,
[out] UINT64 *pAssemblyId,
[out] UINT64 *pHostContext,
[out] IStream **ppStmAssemblyImage,
[out] IStream **ppStmPDB
);
Parameter-parameternya
pBindInfo [di] Penunjuk ke instans AssemblyBindInfo yang digunakan host untuk menentukan karakteristik ikatan tertentu, termasuk ada atau tidak adanya kebijakan penerapan versi apa pun, dan rakitan mana yang akan diikat.
pAssemblyId [out] Penunjuk ke pengidentifikasi unik untuk rakitan yang diminta untuk ini IStream.
pHostContext [out] Penunjuk ke data khusus host yang digunakan untuk menentukan bukti perakitan yang diminta tanpa perlu panggilan platform.
pHostContext
HostContext sesuai dengan properti kelas terkelolaAssembly.
ppStmAssemblyImage [out] Penunjuk ke alamat IStream yang berisi gambar portable executable (PE) yang akan dimuat, atau null jika assembly tidak dapat ditemukan.
ppStmPDB [out] Penunjuk ke alamat IStream yang berisi informasi debug program (PDB), atau null jika file .pdb tidak dapat ditemukan.
Mengembalikan Nilai
| HRESULT | Deskripsi |
|---|---|
| S_OK |
ProvideAssembly berhasil dikembalikan. |
| HOST_E_CLRNOTAVAILABLE | CLR belum dimuat ke dalam proses, atau CLR dalam keadaan di mana clr tidak dapat menjalankan kode terkelola atau memproses panggilan dengan sukses. |
| HOST_E_TIMEOUT | Waktu panggilan habis. |
| HOST_E_NOT_OWNER | Pemanggil tidak memiliki kunci. |
| HOST_E_ABANDONED | Peristiwa dibatalkan saat utas atau serat yang diblokir sedang menunggu di atasnya. |
| E_FAIL | Kegagalan bencana yang tidak diketahui terjadi. Ketika metode mengembalikan E_FAIL, CLR tidak lagi dapat digunakan dalam proses. Panggilan berikutnya ke metode hosting mengembalikan HOST_E_CLRNOTAVAILABLE. |
| COR_E_FILENOTFOUND (0x80070002) | Rakitan yang diminta tidak dapat ditemukan. |
| E_NOT_SUFFICIENT_BUFFER | Ukuran buffer yang ditentukan tidak pAssemblyId cukup besar untuk menahan pengidentifikasi yang ingin dikembalikan host. |
Komentar
Nilai identitas yang dikembalikan untuk pAssemblyId ditentukan oleh host. Pengidentifikasi harus unik dalam masa pakai proses. CLR menggunakan nilai ini sebagai pengidentifikasi unik untuk aliran. Ini memeriksa setiap nilai terhadap nilai untuk pAssemblyId dikembalikan oleh panggilan lain ke ProvideAssembly. Jika host mengembalikan nilai yang sama pAssemblyId untuk yang lain IStream, CLR memeriksa apakah konten aliran tersebut telah dipetakan. Jika demikian, runtime memuat salinan gambar yang ada alih-alih memetakan yang baru.
Persyaratan
Platform: Lihat Persyaratan Sistem.
Header: MSCorEE.h
Perpustakaan: Disertakan sebagai sumber daya dalam MSCorEE.dll
Versi .NET Framework: Tersedia sejak 2.0