共用方式為


FilterInputMessage

除非有傳回 E_NOTIMPL,否則只要收到訊息,PresentationHost.exe 就會呼叫它。

HRESULT FilterInputMessage( [in] MSG* pMsg ) ;

參數

pMsg

[in] WM_INPUT 訊息,傳送至接收未經處理之輸入的視窗。

屬性值/傳回值

HRESULT:

S_OK - 篩選條件未處理這個訊息,可能會做進一步的處理。

S_FALSE - 篩選條件已處理這個訊息,不該做進一步的處理。

E_NOTIMPL - 如果傳回這個值,就不會再呼叫 FilterInputMessage。 這可能是由主應用程式 (Host Application) 傳回,這個主應用程式只對提供自訂程序和錯誤使用者介面給 PresentationHost.exe 有興趣,對於從 PresentationHost.exe 轉送過來的未經處理輸入訊息沒有興趣。

備註

PresentationHost.exe 是各種未經處理輸入裝置 (包括鍵盤、滑鼠和遠端控制項) 的目標。 有時候,主應用程式的行為取決於 PresentationHost.exe 收到的輸入。 例如,主應用程式可能需要根據收到的特定輸入訊息來決定是否要顯示特定使用者介面項目。

為了讓主應用程式收到必要的輸入訊息以提供這些行為,PresentationHost.exe 會呼叫 FilterInputMessage 以將適當的未經處理輸入訊息轉送給主應用程式。

主應用程式會向由 GetRawInputDevices 傳回的未經處理輸裝置 (人類介面裝置) 註冊要接收未經處理輸入訊息。

請參閱

其他資源

WM_INPUT 通知