Funzione WdfDeviceInitRegisterPnpStateChangeCallback (wdfdevice.h)
[Si applica solo a KMDF]
Nota
Questo metodo è solo per uso interno di Microsoft.
Il metodo WdfDeviceInitRegisterPnpStateChangeCallback registra una funzione di callback di eventi fornita dal driver che il framework chiama quando la macchina a stati Plug and Play di un dispositivo cambia stato.
Sintassi
NTSTATUS WdfDeviceInitRegisterPnpStateChangeCallback(
[in] PWDFDEVICE_INIT DeviceInit,
[in] WDF_DEVICE_PNP_STATE PnpState,
[in] PFN_WDF_DEVICE_PNP_STATE_CHANGE_NOTIFICATION EvtDevicePnpStateChange,
[in] ULONG CallbackTypes
);
Parametri
[in] DeviceInit
Puntatore fornito dal chiamante a una struttura WDFDEVICE_INIT.
[in] PnpState
Enumeratore WDF_DEVICE_PNP_STATE che identifica lo stato della macchina Plug and Play per cui il driver richiede la notifica.
[in] EvtDevicePnpStateChange
Puntatore fornito dal chiamante al evtDevicePnpStateChange del driver funzione di callback degli eventi.
[in] CallbackTypes
Combinazione ORed di enumeratori WDF_STATE_NOTIFICATION_TYPEtipizzato.
Valore restituito
Se l'operazione ha esito positivo, WdfDeviceInitRegisterPnpStateChangeCallback restituisce STATUS_SUCCESS. I valori restituiti aggiuntivi includono:
Codice restituito | Descrizione |
---|---|
|
È stato rilevato un parametro non valido. |
|
Memoria insufficiente per completare l'operazione. |
Osservazioni
Se il driver chiama WdfDeviceInitRegisterPnpStateChangeCallback, deve farlo prima di chiamare WdfDeviceCreate.
Per altre informazioni su WdfDeviceInitRegisterPnpStateChangeCallback, vedere State Machines in Framework.
Esempi
L'esempio di codice seguente registra una funzione di callback di eventi che il framework chiamerà quando la macchina a stati Plug and Play del dispositivo cambia stato.
status = WdfDeviceInitRegisterPnpStateChangeCallback(
DeviceInit,
WdfDevStatePnpEjectFailed,
MyDrvPnPStateChangeCallback,
StateNotificationAllStates
);
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Universale |
versione minima di KMDF | 1.0 |
intestazione | wdfdevice.h (include Wdf.h) |
libreria | Wdf01000.sys (vedere Controllo delle versioni della libreria framework). |
IRQL | PASSIVE_LEVEL |
regole di conformità 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) |