Compartilhar via


GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION função de retorno de chamada (gpioclx.h)

O CLIENT_QuerySetControllerInformation função de retorno de chamada de evento consulta o driver de controlador gpio (E/S de uso geral) para o conjunto especificado de atributos do controlador GPIO.

Sintaxe

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

Um ponteiro para o contexto do dispositivo do driver do controlador GPIO.

[in] InputBuffer

Um ponteiro para uma estrutura CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT que descreve o tipo de atributos que o chamador está solicitando.

[out, optional] OutputBuffer

Um ponteiro opcional para uma estrutura CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT na qual a função grava os valores dos atributos solicitados.

Retornar valor

A função CLIENT_QuerySetControllerInformationretornará STATUS_SUCCESS se a chamada for bem-sucedida. Os valores retornados possíveis incluem o código de erro a seguir.

Código de retorno Descrição
STATUS_NOT_SUPPORTED
A função não dá suporte ao tipo de atributos que estão sendo solicitados.

Comentários

O membro RequestType da estrutura CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT apontada por InputBuffer especifica o tipo de atributos que estão sendo solicitados. Para obter uma lista dos tipos de atributos que podem ser solicitados, consulte CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE.

A implementação de uma função CLIENT_QuerySetControllerInformation é opcional. Se um driver de controlador GPIO implementar uma função CLIENT_QuerySetControllerInformation , essa função poderá dar suporte a alguns tipos de solicitações de atributo, mas não dar suporte a outras. Se o chamador solicitar um tipo de atributo ao qual a função não dá suporte, a função retornará STATUS_NOT_SUPPORTED.

Exemplos

Para definir um CLIENT_QuerySetControllerInformation função de retorno de chamada, primeiro você deve fornecer uma declaração de função que identifique o tipo de função de retorno de chamada que você está definindo. O Windows fornece um conjunto de tipos de função de retorno de chamada para drivers. Declarar uma função usando os tipos de função de retorno de chamada ajuda a Análise de Código para Drivers, SDV ( Verificador de Driver Estático ) e outras ferramentas de verificação a encontrar erros e é um requisito para escrever drivers para o sistema operacional Windows.

Por exemplo, para definir uma função de retorno de chamada CLIENT_QuerySetControllerInformation chamada chamada MyEvtGpioQuerySetControllerInformation, use o tipo de função GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION, conforme mostrado neste exemplo de código:

GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION MyEvtGpioQuerySetControllerInformation;

Em seguida, implemente a função de retorno de chamada da seguinte maneira:

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

O tipo de função GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION é definido no arquivo de cabeçalho Gpioclx.h. Para identificar erros com mais precisão ao executar as ferramentas de análise de código, adicione a anotação Use_decl_annotations à sua definição de função. A anotação Use_decl_annotations garante que as anotações aplicadas ao tipo de função GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION no arquivo de cabeçalho sejam usadas. Para obter mais informações sobre os requisitos para declarações de função, consulte Declarando funções usando tipos de função para drivers KMDF. Para obter mais informações sobre Use_decl_annotations, consulte Anotando o comportamento da função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte a partir do Windows 8.
Plataforma de Destino Área de Trabalho
Cabeçalho gpioclx.h
IRQL Chamado em PASSIVE_LEVEL.

Confira também

CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT

CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT

CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE