Compartilhar via


IOCTL_GNSS_INJECT_AGNSS IOCTL (gnssdriver.h)

O código de controle IOCTL_GNSS_INJECT_AGNSS é usado pelo adaptador GNSS para injetar dados do AGNSS no driver. Esse IOCTL é enviado como resultado do driver responder anteriormente a uma solicitação de IOCTL_GNSS_LISTEN_AGNSS pendente.

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

Um ponteiro para uma estrutura GNSS_AGNSS_INJECT.

Comprimento do buffer de entrada

Definido como sizeof(GNSS_AGNSS_INJECT).

Buffer de saída

Definir como NULL.

Comprimento do buffer de saída

Definido como 0.

Bloco de status

Irp->IoStatus.Status será definido como STATUS_SUCCESS se a solicitação for bem-sucedida. Caso contrário, status à condição de erro apropriada como um código de NTSTATUS.

Observações

Entrada

GNSS_AGNSS_INJECT

Dependendo do elemento InjectionType, o elemento de dados apropriado é preenchido.

Saída do

NTSTATUS com as seguintes indicações:
  • Êxito: a injeção de dados do AGNSS foi aceita.
  • Falha: falha na injeção de dados do AGNSS.

notas do adaptador GNSS

Quando o adaptador GNSS falha ao obter tempo para injeção, ele define o elemento InjectionStatus. O driver deve verificar se esse elemento indica êxito, antes de realmente usar os dados do elemento.

Em caso de falha na coleta de dados de injeção, o adaptador não tentará novamente automaticamente. Cabe ao driver tentar novamente o mesmo sequente de solicitação.

Este é um IOCTL de fogo e esquecer. O adaptador GNSS não manipula o erro mesmo que o driver retorne uma falha indicando que os dados de injeção não foram usados.

anotações do driver GNSS

O driver GNSS conclui a solicitação de E/S depois de consumir os dados de injeção.

Requisitos

Requisito Valor
cabeçalho gnssdriver.h

Consulte também

criar solicitações IOCTL em drivers

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously