Partilhar via


C28135

aviso C28135: Se o primeiro argumento para KeWaitForSingleObject for uma variável local, o parâmetro Mode deve ser KernelMode

O driver está aguardando no modo de usuário. Como tal, a pilha do kernel pode ser trocada durante a espera. Se o driver tentar passar parâmetros na pilha, uma falha do sistema pode resultar.

Exemplo

O exemplo de código a seguir provoca esse aviso.

KeWaitForSingleObject(&MyMutex, UserRequest, UserMode, false, NULL);

O exemplo de código a seguir evita esse aviso.

KeWaitForSingleObject(&MyMutex, UserRequest, KernelMode, false, NULL);