Win32環境では、MicrosoftのドキュメントでGetLastInputInfoAPI呼び出しを使用できます。基本的に、このメソッドは、ユーザーが最後に入力を提供した日時に対応する最後のティックを返します。これを現在のティックと比較して、それがどれくらい前かを判断する必要があります。
Xavi23crには、 codeprojectでのC#の良い例があります。
他の環境について何か提案はありますか?
Win32環境では、MicrosoftのドキュメントでGetLastInputInfoAPI呼び出しを使用できます。基本的に、このメソッドは、ユーザーが最後に入力を提供した日時に対応する最後のティックを返します。これを現在のティックと比較して、それがどれくらい前かを判断する必要があります。
Xavi23crには、 codeprojectでのC#の良い例があります。
他の環境について何か提案はありますか?
Linux に関して言えば、Pidgin は一定時間後にステータスを不在に変更するアイドル時間を決定する必要があることを知っています。ソースを開いて、必要なことを実行するコードが見つかるかどうかを確認してください。
あなたはそこであなた自身の質問に答えたようですネイサン;-)「GetLastInputInfo」が道です。
トリックの 1 つは、アプリケーションがデスクトップで実行されていて、ユーザーが仮想マシンに接続している場合、GetLastInputInfo はアクティビティを報告しないということです (ホスト マシンにアクティビティがないため)。
これは、ユーザー入力をどのように適用するかによって、必要な動作とは異なる場合があります。