2012-12-29 60 views
2

有2個USB鍵盤的PC KeyboardA和KeyboardBWindows完全重定向鍵盤輸入

User1在KeyboardA上工作。

某些時間用戶2在鍵盤B上鍵入。

任務:從KeyboardB的所有輸入重定向到文件。

如果我使用SetWindowsHookEx函數,我可以鉤輸入和停止的消息,但不能老是檢測KeyboardA或KeyboardB(有辦法來檢測一下鍵盤?)

如果我使用RegisterRawInputDevices我發現KeyboardA或KeyboardB,但可不停止消息和從KeyboardB輸入轉換到User1接口(有辦法停止消息?)。

可能是我需要anoter的方式從鍵盤到特定的地方ridirect數據?

回答

2

我的解決方案:

  1. 隨着SetWindowsHookEx函數塊的所有輸入

  2. 在RawInput確定鍵盤

  3. 如果它`KeyboardA在活動窗口

  4. 如果重新發送輸入鍵盤B重定向輸入

  5. 對於項禁止塊1 I檢查LLKHF_INJECTED KeyboardHookStruct.Flags和不 塊

Detalis