Поделиться через


Метод IWDFIoRequest::GetOutputMemory (wudfddi.h)

[Предупреждение: UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. В UMDF 1 новые функции не добавляются, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2. Дополнительные сведения см. в разделе начало работы с UMDF.]

Метод GetOutputMemory извлекает объект памяти, представляющий выходной буфер для запроса ввода-вывода.

Синтаксис

void GetOutputMemory(
  [out] IWDFMemory **ppWdfMemory
);

Параметры

[out] ppWdfMemory

Указатель на переменную, которая получает указатель на интерфейс IWDFMemory с подсчетом ссылок для объекта памяти. Обратите внимание, что возвращается значение NULL ; В этом случае с запросом ввода-вывода не связана выходная память.

Возвращаемое значение

None

Remarks

Драйверы, использующие метод доступа буферизованного ввода-вывода , могут вызывать Метод GetOutputMemory для получения выходного буфера запроса ввода-вывода.

Прежде чем драйвер завершит запрос ввода-вывода, драйвер должен вызвать метод IWDFMemory::Release для объекта памяти. Базовый объект памяти освобождается по завершении запроса.

Выходной буфер, связанный с запросом ввода-вывода, содержит сведения (например, данные с диска), которые драйвер предоставляет инициатору запроса. Драйвер может вызвать GetOutputMemory , чтобы получить буфер вывода для запроса на чтение или запроса управления вводом-выводом устройства, но не для запроса на запись (так как запросы на запись не предоставляют выходные данные). Чтобы получить доступ к выходному буферу, драйвер должен вызвать метод IWDFMemory::GetDataBuffer .

UMDF создает объекты памяти запроса ввода-вывода при получении запроса ввода-вывода перед добавлением запроса ввода-вывода в очередь ввода-вывода драйвера. Если UMDF не может выделить память для объектов памяти, она завершает запрос ввода-вывода с состоянием возврата сбоя и не доставляет запрос ввода-вывода драйверу.

Дополнительные сведения о доступе к буферам данных запроса ввода-вывода см. в статье Доступ к буферам данных в драйверах UMDF-Based.

Примеры

Пример кода использования метода GetOutputMemory см. в разделе IWDFIoQueue::RetrieveNextRequest.

Требования

Требование Значение
Дата окончания поддержки Недоступно в UMDF 2.0 и более поздних версиях.
Целевая платформа Персональный компьютер
Минимальная версия UMDF 1.5
Верхняя часть wudfddi.h (включая Wudfddi.h)
DLL WUDFx.dll

См. также раздел

IWDFIoQueue::RetrieveNextRequest

IWDFIoRequest

IWDFMemory

IWDFMemory::GetDataBuffer