Compartilhar via


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 Adquirir-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.

Observações

Inicie uma redefinição em um pino 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 pino pode aceitar novamente novos dados e passar dados para outras conexões.

Requisitos

Requisito Valor
cabeçalho ks.h (incluir Ks.h)

Consulte também

AVStrMiniFilterReset

AVStrMiniPinReset

KSFILTER_DISPATCH

KsAcquireResetValue