Windows ワークステーションのロック時間をプログラム的に決定する
Windows ワークステーションがロックされている時間を知ることは、さまざまなアプリケーションで役立ちます。 この記事では、これを実現するためのいくつかのコーディング アプローチについて概説します。
方法 1: C# と SessionSwitch
イベント
非常に効果的な方法では、C# の SessionSwitch
イベント ハンドラーを使用します。このイベントは、ワークステーションのセッション ステータスが変化したとき (ロック、ロック解除など) に発生します。 これらのイベントを追跡することで、ロック期間を正確に測定できます:
<code class="language-csharp">Microsoft.Win32.SystemEvents.SessionSwitch += new Microsoft.Win32.SessionSwitchEventHandler(SystemEvents_SessionSwitch); void SystemEvents_SessionSwitch(object sender, Microsoft.Win32.SessionSwitchEventArgs e) { if (e.Reason == SessionSwitchReason.SessionLock) { // Record the lock start time. } else if (e.Reason == SessionSwitchReason.SessionUnlock) { // Calculate and record the lock duration. } }</code>
方法 2: Windows サービス (推奨)
自己完結型で信頼性の高いソリューションの場合、Windows サービスには利点があります。 このサービスは、ロック状態を定期的にチェックし、ロック期間のログを維持できます。 これには手動でサービスのインストールと起動が必要になることに注意してください。
さらに読む:
以上がWindows でロックされたワークステーションの期間をプログラムで決定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。