Compartir a través de


GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION función de devolución de llamada (gpioclx.h)

La función de devolución de llamada de evento CLIENT_QuerySetControllerInformation consulta el controlador de controlador de E/S de uso general (GPIO) para el conjunto especificado de atributos del controlador GPIO.

Sintaxis

GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION GpioClientQuerySetControllerInformation;

NTSTATUS GpioClientQuerySetControllerInformation(
  [in]            PVOID Context,
  [in]            PCLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT InputBuffer,
  [out, optional] PCLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT OutputBuffer
)
{...}

Parámetros

[in] Context

Puntero al contexto del dispositivo del controlador GPIO.

[in] InputBuffer

Puntero a una estructura CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT que describe el tipo de atributos que solicita el autor de la llamada.

[out, optional] OutputBuffer

Puntero opcional a una estructura CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT en la que la función escribe los valores de los atributos solicitados.

Valor devuelto

La función CLIENT_QuerySetControllerInformation devuelve STATUS_SUCCESS si la llamada se realiza correctamente. Los valores devueltos posibles incluyen el siguiente código de error.

Código devuelto Descripción
STATUS_NOT_SUPPORTED
La función no admite el tipo de atributos que se solicitan.

Comentarios

El miembro RequestType de la estructura CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT a la que apunta InputBuffer especifica el tipo de atributos que se solicitan. Para obtener una lista de los tipos de atributos que se pueden solicitar, consulte CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE.

La implementación de una función de CLIENT_QuerySetControllerInformation es opcional. Si un controlador de controlador GPIO implementa una función de CLIENT_QuerySetControllerInformation , esta función puede admitir algunos tipos de solicitudes de atributo, pero no admite otras. Si el autor de la llamada solicita un tipo de atributo que la función no admite, la función devuelve STATUS_NOT_SUPPORTED.

Ejemplos

Para definir un CLIENT_QuerySetControllerInformation 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 una función de devolución de llamada CLIENT_QuerySetControllerInformation denominada MyEvtGpioQuerySetControllerInformation, use el tipo de función GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION, como se muestra en este ejemplo de código:

GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION MyEvtGpioQuerySetControllerInformation;

A continuación, implemente la función de devolución de llamada de la siguiente manera:

_Use_decl_annotations_
NTSTATUS
  MyEvtGpioQuerySetControllerInformation(
    PVOID Context,
    PCLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT InputBuffer,
    PCLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT OutputBuffer
    )
{ ... }

El tipo de función GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION se define en el archivo de encabezado Gpioclx.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 GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION 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, consulte Anotación del comportamiento de la función.

Requisitos

Requisito Value
Cliente mínimo compatible Se admite a partir de Windows 8.
Plataforma de destino Escritorio
Encabezado gpioclx.h
IRQL Se llama en PASSIVE_LEVEL.

Consulte también

CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT

CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT

CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE