Fungsi WdfDeviceInitRegisterPnpStateChangeCallback (wdfdevice.h)
[Hanya berlaku untuk KMDF]
Catatan
Metode ini hanya untuk penggunaan internal Microsoft.
Metode WdfDeviceInitRegisterPnpStateChangeCallback mendaftarkan fungsi panggilan balik peristiwa yang disediakan driver yang dipanggil kerangka kerja saat komputer status Plug and Play perangkat berubah status.
Sintaks
NTSTATUS WdfDeviceInitRegisterPnpStateChangeCallback(
[in] PWDFDEVICE_INIT DeviceInit,
[in] WDF_DEVICE_PNP_STATE PnpState,
[in] PFN_WDF_DEVICE_PNP_STATE_CHANGE_NOTIFICATION EvtDevicePnpStateChange,
[in] ULONG CallbackTypes
);
Parameter
[in] DeviceInit
Penunjuk yang disediakan penelepon ke struktur WDFDEVICE_INIT .
[in] PnpState
Enumerator WDF_DEVICE_PNP_STATE yang mengidentifikasi status komputer Plug and Play yang drivernya meminta pemberitahuan.
[in] EvtDevicePnpStateChange
Penunjuk yang disediakan penelepon ke fungsi panggilan balik peristiwa EvtDevicePnpStateChange driver.
[in] CallbackTypes
Kombinasi ORed dari enumerator berjenis WDF_STATE_NOTIFICATION_TYPE.
Nilai kembali
Jika operasi berhasil, WdfDeviceInitRegisterPnpStateChangeCallback mengembalikan STATUS_SUCCESS. Nilai pengembalian tambahan meliputi:
Menampilkan kode | Deskripsi |
---|---|
|
Parameter yang tidak valid terdeteksi. |
|
Memori tidak cukup untuk menyelesaikan operasi. |
Keterangan
Jika driver Anda memanggil WdfDeviceInitRegisterPnpStateChangeCallback, driver harus melakukannya sebelum memanggil WdfDeviceCreate.
Untuk informasi selengkapnya tentang WdfDeviceInitRegisterPnpStateChangeCallback, lihat State Machines dalam Kerangka Kerja.
Contoh
Contoh kode berikut mendaftarkan fungsi panggilan balik peristiwa yang akan dipanggil kerangka kerja saat komputer status Plug and Play perangkat berubah status.
status = WdfDeviceInitRegisterPnpStateChangeCallback(
DeviceInit,
WdfDevStatePnpEjectFailed,
MyDrvPnPStateChangeCallback,
StateNotificationAllStates
);
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Versi KMDF minimum | 1,0 |
Header | wdfdevice.h (termasuk Wdf.h) |
Pustaka | Wdf01000.sys (lihat Penerapan Versi Pustaka Kerangka Kerja.) |
IRQL | PASSIVE_LEVEL |
Aturan kepatuhan DDI | ChildDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf) |