IWDFIoRequest::GetOutputMemory 方法 (wudfddi.h)

[警告: UMDF 2 是最新版的 UMDF,並取代 UMDF 1。 所有新的 UMDF 驅動程式都應該使用 UMDF 2 來撰寫。 未將新功能新增至 UMDF 1,且較新版本的 #DBB328CCD645D45E2A426126038B42ED0 上不支援 UMDF 1。 通用 Windows 驅動程式必須使用 UMDF 2。 如需詳細資訊,請參閱使用 UMDF 使用者入門。]

GetOutputMemory 方法會擷取記憶體物件,此物件代表 I/O 要求的輸出緩衝區。

語法

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

參數

[out] ppWdfMemory

變數的指標,可接收記憶體物件之參考計數 IWDFMemory 介面的指標。 請注意,傳回 NULL 有效;在此情況下,沒有任何輸出記憶體與 I/O 要求相關聯。

傳回值

備註

使用 緩衝 I/O 存取方法的驅動程式可以呼叫 GetOutputMemory 來取得 I/O 要求的輸出緩衝區。

在驅動程式完成 I/O 要求之前,驅動程式必須呼叫記憶體物件的 IWDFMemory::Release 方法。 當要求完成時,會釋放基礎記憶體物件。

與 I/O 要求相關聯的輸出緩衝區包含 (資訊,例如,驅動程式提供給要求來源者之磁碟) 的數據。 驅動程式可以呼叫 GetOutputMemory 來取得讀取要求或裝置 I/O 控制要求的輸出緩衝區,但不適用於寫入要求 (,因為寫入要求不會提供輸出數據) 。 若要存取輸出緩衝區,驅動程式必須呼叫 IWDFMemory::GetDataBuffer 方法。

UMDF 會在收到 I/O 要求時建立 I/O 要求的記憶體物件,再將 I/O 要求新增至驅動程式的 I/O 佇列。 如果UMDF無法為記憶體物件配置記憶體,它會完成I/O要求並傳回失敗狀態,而且不會將I/O要求傳遞給驅動程式。

如需存取 I/O 要求數據緩衝區的詳細資訊,請參閱 存取 UMDF-Based 驅動程式中的數據緩衝區

範例

如需如何使用 GetOutputMemory 方法的程式代碼範例,請參閱 IWDFIoQueue::RetrieveNextRequest

規格需求

需求
終止支援 UMDF 2.0 和更新版本中無法使用。
目標平台 桌面
最低UMDF版本 1.5
標頭 wudfddi.h (包括 Wudfddi.h)
Dll WUDFx.dll

另請參閱

IWDFIoQueue::RetrieveNextRequest

IWDFIoRequest

IWDFMemory

IWDFMemory::GetDataBuffer