IWDFIoRequest::GetOutputMemory 方法 (wudfddi.h)
[警告: UMDF 2 是最新版本的 UMDF,並取代 UMDF 1。 所有新的UMDF驅動程式都應該使用UMDF 2撰寫。 未將新功能新增至 UMDF 1,而且較新版本的 Windows 10 上對 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 |