Метод IWDFIoRequest::GetFileObject (wudfddi.h)
[Предупреждение: UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. В UMDF 1 новые функции не добавляются, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2. Дополнительные сведения см. в разделе начало работы с UMDF.]
Метод GetFileObject извлекает указатель на интерфейс IWDFFile , связанный с запросом ввода-вывода.
Синтаксис
void GetFileObject(
[out] IWDFFile **ppFileObject
);
Параметры
[out] ppFileObject
Указатель на буфер, получающий указатель на интерфейс IWDFFile для объекта файла. Обратите внимание, что возвращается значение NULL .
Возвращаемое значение
None
Remarks
Когда драйвер вызывает GetFileObject, платформа увеличивает количество ссылок в интерфейсе. Ваш драйвер отвечает за освобождение ссылки после завершения работы с указателем интерфейса. Для этого используйте интеллектуальный указатель, который автоматически уменьшает количество ссылок, когда объект выходит из контекста, или вызовите Release в интерфейсе после завершения работы с ним.
Примеры
Следующий пример кода взят из примера WpdMultiTransportDriver в WDK. В примере объявляется интеллектуальный указатель на интерфейс IWDFFile , вызывается GetFileObject, а затем вызывается Метод RetrieveContext для объекта файла.
CComPtr<IWDFFile> pFileObject;
...
// Get the Context map for this client
pRequest->GetFileObject(&pFileObject);
if (pFileObject != NULL)
{
hr = pFileObject->RetrieveContext((void**)&pClientContextMap);
CHECK_HR(hr, "Failed to get Contextmap from WDF File Object");
}
Требования
Требование | Значение |
---|---|
Дата окончания поддержки | Недоступно в UMDF 2.0 и более поздних версиях. |
Целевая платформа | Персональный компьютер |
Минимальная версия UMDF | 1.5 |
Верхняя часть | wudfddi.h (включая Wudfddi.h) |
DLL | WUDFx.dll |