Función NfcCxHardwareEvent (nfccx.h)
Lo llama el controlador de cliente cuando se produce un evento de hardware como devoluciones de llamada D0Entry y D0Exit para iniciar o detener el dispositivo. Para los controladores que requieren descarga de firmware en la inicialización o el arranque, se recomienda mover esta llamada a un elemento de trabajo independiente. Sin embargo, el controlador cliente es responsable de lo siguiente:
- El controlador cliente debe tomar una referencia de energía inactiva antes de poner en cola el elemento de trabajo. La referencia debe quitarse cuando se complete el elemento de trabajo. Esto garantiza que la administración de energía inactiva no haga que el controlador entre en D3 mientras se ejecuta el elemento de trabajo.
- El controlador cliente debe sincronizar el elemento de trabajo con otras devoluciones de llamada de dispositivo. Esto suele lograrse mediante la opción AutomaticSerialization en WDF_WORKITEM_CONFIG y hacer que el elemento primario del WDFWORKITEM sea el WDFDEVICE o que la devolución de llamada del elemento de trabajo tome explícitamente el bloqueo del dispositivo, es decir, WdfObjectAcquireLock en WDFDEVICE.
- Si se produce un error en la llamada de evento de hardware desde un elemento de trabajo, el controlador cliente debe reiniciar o desbloquear el controlador para evitar que esté en un estado incorrecto. Esto se puede lograr mediante la opción Reiniciar o Descargar.
Sintaxis
NTSTATUS NfcCxHardwareEvent(
WDFDEVICE Device,
PNFC_CX_HARDWARE_EVENT HardwareEvent
);
Parámetros
Device
Identificador de un objeto de dispositivo de marco.
HardwareEvent
Puntero a una estructura NFC_CX_HARDWARE_EVENT.
Valor devuelto
Si la operación se realiza correctamente, la función devuelve STATUS_SUCCESS.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 10 |
servidor mínimo admitido | No se admite ninguna |
de la plataforma de destino de |
Windows |
encabezado de |
nfccx.h (incluya Ncidef.h) |
biblioteca de |
Nfccxstub.lib |
DLL de |
NfcCx.dll |