IOCTL_INTERNAL_I8042_HOOK_MOUSE IOCTL (ntdd8042.h)
A solicitação IOCTL_INTERNAL_I8042_HOOK_MOUSE adiciona uma rotina de retorno de chamada ISR ao ISR do mouse I8042prt. O retorno de chamada ISR é opcional e é fornecido por um driver de filtro de mouse de nível superior.
O I8042prt envia essa solicitação depois de receber uma solicitação de IOCTL_INTERNAL_MOUSE_CONNECT . O I8042prt envia uma solicitação de IOCTL_INTERNAL_I8042_HOOK_MOUSE síncrona para a parte superior da pilha de dispositivos do mouse.
Depois que moufiltr recebe a solicitação do mouse gancho, ele filtra a solicitação da seguinte maneira:
- Salva as informações de nível superior passadas para Moufiltr, que inclui o contexto de um objeto de dispositivo de nível superior e um ponteiro para um retorno de chamada ISR
- Substitui as informações de nível superior por suas próprias
- Salva o contexto de I8042prt e ponteiros em retornos de chamada que os retornos de chamada do ISR do Moufiltr podem usar
Código principal
IRP_MJ_INTERNAL_DEVICE_CONTROL
Buffer de entrada
O membro Parameters.DeviceIoControl.InputBufferLength é definido como um valor maior ou igual ao tamanho, em bytes, de uma estrutura INTERNAL_I8042_HOOK_MOUSE .
O Parameters.DeviceIoControl.Type3InputBuffer aponta para uma estrutura INTERNAL_I8042_HOOK_MOUSE alocada e definida inicialmente por I8042prt.
Comprimento do buffer de entrada
O Parameters.DeviceIoControl.Type3InputBuffer aponta para uma estrutura INTERNAL_I8042_HOOK_MOUSE alocada e definida inicialmente por I8042prt.
Buffer de saída
Nenhum
Comprimento do buffer de saída
Nenhum
Bloco de status
O membro Status é definido como um dos seguintes valores:
STATUS_INVALID_PARAMETER
Parameters.DeviceIoControl.InputBufferLength é menor que o tamanho, em bytes, de uma estrutura INTERNAL_I8042_HOOK_MOUSE.
STATUS_SUCCESS
A solicitação foi concluída com êxito.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | ntdd8042.h (inclua Ntdd8042.h) |