IOCTL_KS_RESET_STATE IOCTL (ks.h)

Um aplicativo pode usar IOCTL_KS_RESET_STATE para retornar um pino ao estado em que estava em Acquire-time. O aplicativo passa IOCTL_KS_RESET_STATE com os parâmetros descritos abaixo para a função KsSynchronousDeviceControl .

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

Um cliente fornece um buffer que contém o valor de redefinição (KSRESET_BEGIN, KSRESET_END) no parâmetro InBuffer .

Comprimento do buffer de entrada

InLength especifica o tamanho, em bytes, do conteúdo do buffer de entrada.

Buffer de saída

Nenhum.

Comprimento do buffer de saída

Nenhum.

Bloco de status

Se a solicitação for bem-sucedida, o membro Status será definido como STATUS_SUCCESS.

Comentários

Inicie uma redefinição em um pin enviando IOCTL_KS_RESET_STATE com um valor de KSRESET_BEGIN no parâmetro InBuffer de KsSynchronousDeviceControl.

Quando o estado de redefinição é iniciado, as solicitações de leitura e gravação existentes são canceladas. Enquanto estiver no estado de redefinição, todas as novas solicitações de leitura ou gravação são rejeitadas com STATUS_DEVICE_NOT_READY.

Para encerrar o estado de redefinição, envie IOCTL_KS_RESET_STATE com um valor de KSRESET_END.

Observe que o estado de redefinição não é cancelado alterando o estado do pino.

Quando o estado de redefinição é encerrado, o pin pode aceitar novamente novos dados e passar dados para outras conexões.

Requisitos

Requisito Valor
Cabeçalho ks.h (inclua Ks.h)

Confira também

AVStrMiniFilterReset

AVStrMiniPinReset

KSFILTER_DISPATCH

KsAcquireResetValue