Fungsi ZwUnloadDriver (wdm.h)

Rutinitas ZwUnloadDriver membongkar driver dari sistem. Gunakan rutinitas ini dengan sangat hati-hati (lihat bagian Keterangan di bawah).

Sintaks

NTSYSAPI NTSTATUS ZwUnloadDriver(
  [in] PUNICODE_STRING DriverServiceName
);

Parameter

[in] DriverServiceName

Penunjuk ke string Unicode terhitung yang menentukan jalur ke kunci registri driver, \Registry\Machine\System\CurrentControlSet\Services\<DriverName>, di mana DriverName adalah nama driver.

Nilai kembali

ZwUnloadDriver mengembalikan STATUS_SUCCESS atau kesalahan nilai NTSTATUS seperti STATUS_INVALID_DEVICE_REQUEST.

Jika driver yang ditentukan dalam DriverServiceName tidak memiliki rutinitas panggilan balik DriverUnload yang diatur dalam struktur DRIVER_OBJECT , ZwUnloadDriver mengembalikan STATUS_INVALID_DEVICE_REQUEST.

Keterangan

ZwUnloadDriver secara dinamis membongkar driver sistem perangkat atau file dari sistem yang sedang berjalan. Tidak disarankan agar driver memanggil ZwUnloadDriver dengan sendirinya.

Pengandar filter sistem file tidak dapat dibongkar dengan aman dari sistem yang sedang berjalan. Dengan demikian filter hanya boleh menggunakan ZwUnloadDriver untuk tujuan penelusuran kesalahan. Ini tidak boleh memanggil rutinitas ini dalam versi ritel filter.

Jika DriverName adalah nama driver perangkat PnP, ZwUnloadDriver mengembalikan STATUS_INVALID_DEVICE_REQUEST dan tidak membongkar driver.

Minifilter harus menggunakan FltUnloadFilteralih-alih ZwUnloadDriver untuk membongkar minifilter pendukung.

Jika panggilan ke fungsi ZwUnloadDriver terjadi dalam mode pengguna, Anda harus menggunakan nama "NtUnloadDriver" alih-alih "ZwUnloadDriver".

Untuk panggilan dari driver mode kernel, versi NtXxx dan ZwXxx dari rutinItas Windows Native System Services dapat berperilaku berbeda dalam cara mereka menangani dan menginterpretasikan parameter input. Untuk informasi selengkapnya tentang hubungan antara versi NtXxx dan ZwXxx dari rutinitas, lihat Menggunakan Versi Nt dan Zw dari Rutinitas Layanan Sistem Asli.

Persyaratan

Persyaratan Nilai
Target Platform Universal
Header wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Aturan kepatuhan DDI HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

Lihat juga

FltUnloadFilter

RtlInitUnicodeString

UNICODE_STRING

Menggunakan Versi Nt dan Zw dari Rutinitas Layanan Sistem Asli