Regra ReqNotCanceledLocal (kmdf)
A regra ReqNotCanceledLocal especifica que, se uma solicitação marcada como cancelável for concluída em uma função de retorno de chamada de fila de E/S padrão, o método WdfRequestUnmarkCancelable deverá ser chamado na solicitação de E/S antes da conclusão. A solicitação de E/S deve ser concluída, a menos que a solicitação seja cancelada antes de chamar WdfRequestUnmarkCancelable.
Se uma solicitação marcada como cancelável por WdfRequestMarkCancelable for concluída (chamando WdfRequestComplete, WdfRequestCompleteWithInformation ou WdfRequestCompleteWithPriorityBoost), o método WdfRequestUnmarkCancelable deverá ser chamado antes que a solicitação de E/S seja concluída. A solicitação pode ser concluída, a menos que o método WdfRequestUnmarkCancelable retorne status igual a STATUS_CANCELLED.
As funções de retorno de chamada de fila de E/S padrão para uma solicitação são EvtIoDefault, EvtIoRead, EvtIoWrite, EvtIoDeviceControl, EvtIoInternalDeviceControl.
Modelo de driver: KMDF
Como testar
Em tempo de compilação |
---|
Execute o Verificador de Driver Estático e especifique a regra ReqNotCanceledLocal . Use as seguintes etapas para executar uma análise do código:
Para obter mais informações, consulte Usando o Verificador de Driver Estático para localizar defeitos em drivers. |
Aplica-se a
WdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestMarkCancelableWdfRequestMarkCancelableExWdfRequestUnmarkCancelable