0

Windows CE でバックライトをオンにする他の方法はありますか?? 現在、最終的にバックライトをオンに保つイベント「PowerManager/ActivityTimer/UserActivity」を設定しています。ユーザーによるタッチなどのデバイスでのアクティビティがあるかどうかも監視したいと思います。指定された時間、ユーザーによるアクティビティがない場合、アプリケーション固有のログオフを実行したいと考えています。バックライトを維持したいので、上記のイベントを手動で設定していますが、実際のユーザー アクティビティを測定する際に問題が発生しています。

解決策はありますか?

ありがとう、オムキー

4

1 に答える 1

0

各デバイスには、おそらく DeviceIoControl 呼び出しによってアクセスされる、バックライト用の固有のドライバーがあります。私が使用した CE デバイスでは、これらの API はバックライトをオンにしませんが、タイムアウトと強度の設定を制御します。おそらく SetDevicePower() または SetPowerRequirement() API を使用できますが、私はそれらを使用したことはありません。

「PowerManager/ActivityTimer/UserActivity」イベントを使用してバックライトをオンにしました。CE は、マウスとキーボードのアクティビティから同じイベントを設定すると思います。このイベントを待機してアクティビティを検出しようとして失敗しましたが、問題は、設定されたときにスレッドがスケジュールされるという保証がないことです。次に、イベントを再設定して、通常のシステム動作をトリガーする必要があります。

キーボード アクティビティ SetWindowHookEx をキャプチャできます。 http://www.codeproject.com/KB/windows/wincekbhook.aspxを参照してください。コード プロジェクト サイトにも C# の記事があります。WMではこれを見つけられませんでしたが、私が使用したCEデバイスでは単一のフックしか設定できないことに注意してください。

マウス入力もスヌープできるのではないかと思いますが、その方法はわかりません。

于 2011-09-29T20:45:59.863 に答える