Regra MemAfterReqCompletedIntIoctl (kmdf)

A regra MemAfterReqCompletedIntIoctl especifica que, dentro da função de retorno de chamada EvtIoInternalDeviceControl , o objeto de memória da estrutura não pode ser acessado depois que a solicitação de E/S é concluída.

Dentro da função de retorno de chamada EvtIoInternalDeviceControl do driver, o objeto de memória da estrutura que foi recuperado chamando os métodos WdfRequestRetrieveInputMemory ou WdfRequestRetrieveOutputMemory não pode ser acessado depois de chamar WdfRequestComplete, WdfRequestCompleteWithInformation ou WdfRequestCompleteWithPriorityBoost na solicitação de E/S.

Essa regra considera os dois métodos de acesso à memória a seguir:

WdfRequestRetrieveInputMemoryWdfRequestRetrieveOutputMemory

Modelo de driver: KMDF

Como testar

Em tempo de compilação

Execute o Verificador de Driver Estático e especifique a regra MemAfterReqCompletedIntIoctl .

Use as seguintes etapas para executar uma análise do seu código:
  1. Prepare seu código (use declarações de tipo de função).
  2. Execute o Verificador de Driver Estático.
  3. Exibir e analisar os resultados.

Para obter mais informações, consulte Usando o verificador de driver estático para encontrar defeitos em drivers.

Aplica-se a

WdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveInputMemoryWdfRequestRetrieveOutputMemory