Правило BufAfterReqCompletedRead (kmdf)

Правило BufAfterReqCompletedRead указывает, что в функции обратного вызова EvtIoRead извлеченный буфер запросов ввода-вывода не может быть доступен после завершения запроса ввода-вывода. Существует 14 DDIs, которые служат в качестве возможных методов доступа к буферу.

В функции обратного вызова EvtIoRead драйвера невозможно получить доступ к буферу запросов, который был получен путем вызова WdfRequestRetrieveOutputBuffer или WdfRequestRetrieveUnsafeUserOutputBuffer после вызова WdfRequestComplete, WdfRequestCompleteWithInformation или WdfRequestCompleteWithPriorityBoost в запросе ввода-вывода.

Модель драйвера: KMDF

Как тестировать

Во время компиляции

Запустите средство проверки статических драйверов и укажите правило BufAfterReqCompletedRead .

Выполните следующие действия, чтобы выполнить анализ кода.
  1. Подготовьте код (используйте объявления типов ролей).
  2. Запустите средство проверки статических драйверов.
  3. Просмотр и анализ результатов.

Дополнительные сведения см. в разделе Использование средства проверки статических драйверов для поиска дефектов в драйверах.

Применяется к

WdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveInputBufferWdfRequestRetrieveOutputBufferWdfRequestRetrieveUnsafeUserInputBufferWdfRequestRetrieveUnsafeUserOutputBuffer