EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION función de devolución de llamada (sercx.h)
La evtSerCx2EvtSerCx2SystemDmaReceiveInitializeTransaction función de devolución de llamada de eventos se llama mediante la versión 2 de la extensión de marco serie (SerCx2) para preparar el controlador de controlador serie para realizar una transacción de recepción de system-DMA.
Sintaxis
EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION EvtSercx2SystemDmaReceiveInitializeTransaction;
void EvtSercx2SystemDmaReceiveInitializeTransaction(
[in] SERCX2SYSTEMDMARECEIVE SystemDmaReceive,
[in] ULONG Length
)
{...}
Parámetros
[in] SystemDmaReceive
Identificador de SERCX2SYSTEMDMARECEIVE a un objeto system-DMA-receive. El controlador de controlador serie llamó anteriormente al método SerCx2SystemDmaReceiveCreate para crear este objeto.
[in] Length
Número de bytes que se van a transferir en la transacción system-DMA-receive.
Valor devuelto
Ninguno
Observaciones
El controlador de controlador serie puede, como opción, implementar esta función. Si se implementa, el controlador registra la función en el SerCx2SystemDmaReceiveCreate llamada que crea el objeto system-DMA-receive.
El controlador debe implementar una función EvtSerCx2EvtSerCx2SystemDmaReceiveInitializeTransaction si necesita inicializar el controlador serie y el hardware asociado como preparación para una nueva transacción de recepción de system-DMA. SerCx2 llama a esta función, si se implementa, antes de que se inicie una transacción system-DMA-receive. En respuesta a esta llamada, el controlador del controlador serie debe llamar al método SerCx2SystemDmaReceiveInitializeTransactionComplete para notificar a SerCx2 una vez finalizada la inicialización.
Para obtener más información, vea SerCx2 System-DMA-Receive Transactions.
Ejemplos
Para definir un EvtSerCx2EvtSerCx2SystemDmaReceiveInitializeTransaction función de devolución de llamada, primero debe proporcionar una declaración de función que identifique el tipo de función de devolución de llamada que está definiendo. Windows proporciona un conjunto de tipos de función de devolución de llamada para controladores. Declarar una función mediante los tipos de función de devolución de llamada ayuda a Análisis de código para controladores, comprobador de controladores estáticos (SDV) y otras herramientas de comprobación encuentran errores y es un requisito para escribir controladores para el sistema operativo Windows.
Por ejemplo, para definir un EvtSerCx2EvtSerCx2SystemDmaReceiveInitializeTransaction función de devolución de llamada denominada MySystemDmaReceiveInitializeTransaction
, use el tipo de función EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION, como se muestra en este ejemplo de código:
EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION MySystemDmaReceiveInitializeTransaction;
A continuación, implemente la función de devolución de llamada de la siguiente manera:
_Use_decl_annotations_
VOID
MySystemDmaReceiveInitializeTransaction(
SERCX2SYSTEMDMARECEIVE SystemDmaReceive,
ULONG Length
)
{...}
El tipo de función EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION se define en el archivo de encabezado Sercx.h. Para identificar con más precisión los errores al ejecutar las herramientas de análisis de código, asegúrese de agregar la anotación Use_decl_annotations a la definición de función. La anotación Use_decl_annotations garantiza que se usen las anotaciones que se aplican al tipo de función EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION en el archivo de encabezado. Para obtener más información sobre los requisitos de las declaraciones de función, consulte Declaración de funciones mediante tipos de rol de función para controladores kmDF. Para obtener más información sobre Use_decl_annotations, vea Anotación del comportamiento de la función.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible a partir de Windows 8.1. |
de la plataforma de destino de |
Escritorio |
encabezado de |
sercx.h |
irQL | Se llama a irQL <= DISPATCH_LEVEL. |