Aturan InitFreeNull (kmdf)
Aturan InitFreeNull menentukan bahwa DDI yang menerima PWDFDEVICE_INIT sebagai parameter tidak dapat dipanggil dengan menggunakan penunjuk NULL ke struktur WDFDEVICE_INIT .
Metode yang disediakan kerangka kerja menginisialisasi struktur WDFDEVICE_INIT . Ketika driver memanggil WdfDeviceCreate untuk membuat objek perangkat fungsional (FDO) atau objek perangkat fisik (PDO), metode WdfDeviceCreate mengatur parameter pertama ke NULL jika berhasil.
Jika driver mengalami kesalahan ketika memanggil metode inisialisasi objek perangkat atau WdfDeviceCreate, driver harus memanggil WdfDeviceInitFree. Setelah panggilan berhasil ke WdfDeviceInitFree, Anda harus mengatur penunjuk ke struktur WDFDEVICE_INIT ke NULL (PWDFDEVICE_INIT=NULL).
Model driver: KMDF
Cara menguji
Pada waktu kompilasi |
---|
Jalankan Pemverifikasi Driver Statis dan tentukan aturan InitFreeNull . Gunakan langkah-langkah berikut untuk menjalankan analisis kode Anda:
Untuk informasi selengkapnya, lihat Menggunakan Pemverifikasi Driver Statis untuk Menemukan Cacat pada Driver. |
Berlaku untuk
WdfDeviceCreateWdfDeviceInitAssignNameWdfDeviceInitAssignSDDLStringWdfDeviceInitAssignWdmIrpPreprocessCallbackWdfDeviceInitFreeWdfDeviceInitRegisterPnpStateChangeCallback WdfDeviceInitFree WdfDeviceInitRegisterPnpStateChangeCallbackWdfDeviceInitRegisterPowerPolicyStateChangeCallbackWdfDeviceInitRegisterPowerStateChangeCallbackWdfPdoInitAddCompatibleIDWdfPdoInitAddDeviceTextWdfPdoInitAddHardwareIDWdfPdoInitAssignDeviceIDWdfPdoInitAssignInstanceIDWdfPdoInitAssignRawDevice
Lihat juga
InitFreeDeviceCallbackInitFreeDeviceCreateInitFreeDeviceCreateType2PdoInitFreeDeviceCreateType2InitFreeDeviceCreateType4PdoInitFreeDeviceCallbackPdoInitFreeDeviceCreatePdoInitFreeDeviceCreateType4