Bagikan melalui


Metode ICLRDebuggingLibraryProvider2::P rovideLibrary2

Memungkinkan debugger menyediakan jalur ke pustaka debugging common language runtime (CLR) khusus versi.

Sintaksis

HRESULT ProvideLibrary2 (
     [in] const WCHAR* pwszFileName,
     [in] DWORD dwTimestamp,
     [in] DWORD dwSizeOfImage,
     [out] LPWSTR* ppResolvedModulePath);

Parameter-parameternya

pwszFilename
[di] Nama modul yang diminta.

dwTimestamp
[di] Stempel waktu tanggal disimpan di header file COFF file PE.

dwSizeOfImage
[di] Bidang SizeOfImage yang disimpan di header file opsional COFF dari file PE.

ppResolvedModulePath
[out] Ini adalah jalur null yang dihentikan ke dll modul. Pada Windows harus dialokasikan dengan CoTaskMemAlloc. Pada Unix harus dialokasikan dengan malloc. Kegagalan membuatnya tidak tersentuh. Lihat catatan keamanan di bawah ini!

Mengembalikan nilai

Metode ini mengembalikan HRESULT tertentu berikut serta kesalahan HRESULT yang menunjukkan kegagalan metode.

HRESULT Deskripsi
S_OK Metode berhasil diselesaikan.

Komentar

ProvideLibrary2 memungkinkan debugger untuk menyediakan modul yang diperlukan untuk men-debug file CLR tertentu seperti mscordbi.dll dan mscordacwks.dll.

Debugger dapat menggunakan cara yang tersedia untuk menemukan atau mendapatkan modul penelusuran kesalahan.

Penting

Fitur ini memungkinkan pemanggil API untuk menyediakan modul yang berisi executable, dan mungkin berbahaya, kode. Sebagai tindakan pencegahan keamanan, pemanggil tidak boleh menggunakan ProvideLibrary2 untuk mendistribusikan kode apa pun yang tidak bersedia dijalankan sendiri.

Jika masalah keamanan serius ditemukan di pustaka yang sudah dirilis, seperti mscordbi.dll atau mscordacwks.dll, shim dapat di-patch untuk mengenali versi file yang buruk. Shim kemudian dapat mengeluarkan permintaan untuk versi file yang di-patch dan menolak versi buruk jika disediakan sebagai respons terhadap permintaan apa pun. Ini hanya dapat terjadi jika pengguna telah melakukan patch ke versi baru shim. Versi yang tidak dipaketkan akan tetap rentan.

Persyaratan

Platform: Lihat Sistem operasi yang didukung .NET.

Header: dbgshim.h

Pustaka: dbgshim.dll, libdbgshim.so, libdbgshim.dylib

Versi .NET: Tersedia sejak .NET Core 2.1