共用方式為


PFN_MIRACAST_IO_CONTROL回呼函式 (netdispumdddi.h)

由使用者模式顯示驅動程式呼叫,以傳送內核模式顯示迷你埠驅動程式同步 I/O 控制件要求。這個函式的資料類型 PFN_MIRACAST_IO_CONTROL

語法

PFN_MIRACAST_IO_CONTROL PfnMiracastIoControl;

NTSTATUS PfnMiracastIoControl(
  [in]            HANDLE hMiracastDeviceHandle,
  [in]            BOOL HardwareAccess,
  [in]            UINT InputBufferSize,
  [in]            VOID *pInputBuffer,
  [in]            UINT OutputBufferSize,
  [out]           VOID *pOutputBuffer,
  [out, optional] UINT *pBytesReturned
)
{...}

參數

[in] hMiracastDeviceHandle

代表Miracast裝置的句柄。 Miracast 使用者模式驅動程式先前在呼叫 createMiracastContext 函式時,以 hMiracastDeviceHandle 參數的形式取得此句柄。

[in] HardwareAccess

布爾值,指出使用者模式顯示驅動程式的這個 I/O 控件要求是否需要排清所有暫止的 GPU DMA 緩衝區。

我們不建議驅動程式將此值設定為 TRUE,除非有需要,因為排清 GPU 會產生大量的處理額外負荷。

[in] InputBufferSize

pInputBuffer 所指向之輸入緩衝區的大小,以位元組為單位,

[in] pInputBuffer

輸入緩衝區的指標。 InputBufferSize 參數會指定緩衝區的大小。

[in] OutputBufferSize

pOutputBuffer 所指向之輸出緩衝區的大小,以位元組為單位,

[out] pOutputBuffer

驅動程式提供的輸出緩衝區指標。 OutputBufferSize 參數會指定緩衝區的大小。

[out, optional] pBytesReturned

選擇性的驅動程式提供的指標,指向 UINT類型變數,可保存顯示迷你埠驅動程式傳回的位元組數目。

傳回值

成功時,作系統會傳回 STATUS_SUCCESS。 否則,函式會傳回 Ntstatus.h 標頭中定義的錯誤碼。

言論

如果 Miracast 使用者模式驅動程式在作系統啟動 Miracast 會話時呼叫 MiracastIoControl,而且如果呼叫線程不是作系統呼叫 StartMiracastSession 函式的線程,則作系統會 封鎖 miracastIoControl 呼叫,直到 Miracast 啟動會話完成為止。 如果使用者模式驅動程式呼叫 MiracastIoControl 與 createMiracastContext StartMiracastSession 函式 中使用的相同內容,作系統將會處理呼叫。

如果 Miracast 使用者模式驅動程式在作系統停止 Miracast 工作階段時呼叫 MiracastIoControl,而且如果呼叫線程不是作系統呼叫 StopMiracastSession 函式的線程,則作系統將會失敗此呼叫。 如果使用者模式驅動程式呼叫 MiracastIoControlStopMiracastSessionDestroyMiracastContext 函式中使用的相同內容,作系統將會處理呼叫。

要求

要求 價值
最低支援的用戶端 Windows 8.1
支援的最低伺服器 Windows Server 2012 R2
目標平臺 桌面
標頭 netdispumdddi.h (include Netdispumdddi.h)

另請參閱

CreateMiracastContext

DestroyMiracastContext

StartMiracastSession

StopMiracastSession