Método IDeviceIoControl::D eviceIoControlAsync (deviceaccess.h)
El método DeviceIoControlAsync envía una solicitud de control asincrónica de entrada y salida del dispositivo (E/S) a la interfaz del dispositivo que la llamada a la función CreateDeviceAccessInstance especificó.
Sintaxis
HRESULT DeviceIoControlAsync(
[in] DWORD ioControlCode,
[in] UCHAR *inputBuffer,
[in] DWORD inputBufferSize,
[out] UCHAR *outputBuffer,
[in] DWORD outputBufferSize,
[in] IDeviceRequestCompletionCallback *requestCompletionCallback,
[out] ULONG_PTR *cancelContext
);
Parámetros
[in] ioControlCode
Código de control de E/S para la operación.
[in] inputBuffer
Un búfer de entrada opcional para la operación.
[in] inputBufferSize
Tamaño del búfer de entrada, en bytes.
[out] outputBuffer
Un búfer de salida operativo para la operación.
[in] outputBufferSize
Tamaño del búfer de salida, en bytes.
[in] requestCompletionCallback
Interfaz de devolución de llamada en la que se llama al método RequestCompletion si la operación se envía correctamente.
[out] cancelContext
Puntero opcional que recibe un contexto de cancelación que se puede pasar al método CancelOperation para cancelar una solicitud pendiente.
Valor devuelto
Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.
Comentarios
Si la solicitud se envía correctamente (es decir, llamar a esta función no devuelve inmediatamente un error), el resultado de la operación está disponible en la devolución de llamada RequestCompletion de la interfaz IDeviceRequestCompletionCallback proporcionada.
Una operación que el sistema (sistema operativo o controlador de dispositivo) produce un error inmediatamente no produce una devolución de llamada. Esto significa que el autor de la llamada recibe una devolución de llamada solo si esta función devuelve S_OK.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Windows |
Encabezado | deviceaccess.h |
Library | Deviceaccess.lib |