C#でクライアントのようなものを作成したいと考えています。Cでコンピュータステータスを取得する方法#
しかし、スリープモード、オフ、ログイン、ログアウトなどのコンピュータの状態をどのように知ることができるかわかりません。
また、ユーザーが10分間コンピュータを使用していない場合は、警告を受け取る必要があります。
C#でクライアントのようなものを作成したいと考えています。Cでコンピュータステータスを取得する方法#
しかし、スリープモード、オフ、ログイン、ログアウトなどのコンピュータの状態をどのように知ることができるかわかりません。
また、ユーザーが10分間コンピュータを使用していない場合は、警告を受け取る必要があります。
現在ログインしているユーザーと、ロック/ロック解除されたイベントをフックする方法については、in this threadを参照してください。
あなたが試すかもしれないいくつかの他の異なるアプローチがあります。
System.Diagnostics
を使用してProcesses.GetProcesses()
を介してプロセスのリストを取得することができます。アイドルプロセスに注意してください。CPUが50%を超えて10分を超えて実行されている場合、ユーザーはアイドル状態にあるようです。部分的な回答: フックを使用して、ユーザーのアクティビティ/非アクティブを監視できます。 10分間隔でタイマーを開始します。キーボード/マウスのメッセージが検出されたら、それを再起動してください。タイマーイベントが発生した場合は、10分間の非アクティブを検出したことになります。
「オフ」は簡単です!しかし、私は "クライアント"ビットを削除します。これは非常に曖昧で無関係なものです。セッションモードを決定する際の問題点を広げながら、最後に、2番目の質問を別の質問としてお勧めします。 –
これはあいまいな言葉の質問です。詳しい情報とより具体的な質問を言い換えてみてください。また、アプリケーションが実行されているローカルPC、またはネットワーク上の別の(リモート)PCのステータスを監視しようとしている場合は、それを明確にする必要があります。 – Jason
実際に私が何かを書くときstackoverflowはそれを受け入れませんので、それは短いですが基本的に私はアプリケーションが実行されているローカルPCを監視したい、私は変更モードがあれば私はすべてのデータをデータベースにエクスポートします – user1021833