プログラムで特定のWindowsXPマシンのユーザー入力から現在のアイドル時間を知りたいです。MSAccessでVBAを使用しています。どのようなオプションがありますか?
2398 次
1 に答える
4
以下を使用して解決策を取得しました。
Private Declare Function GetTickCount Lib "kernel32" () As Long
Private Declare Function GetLastInputInfo Lib "user32" (plii As Any) As Long
Private Type LastInputInformation
cbSize As Long
dwTime As Long
End Type
Public Function GetUsersIdleTime() As Long
Dim lii As LastInputInformation
lii.cbSize = Len(lii)
Call GetLastInputInfo(lii)
GetUsersIdleTime = FormatNumber((GetTickCount() - lii.dwTime) / 1000, 2)
End Function
アイドル状態になる可能性のあるシステムの他の部分があります。
- CPU
- ディスク
- 通信網
- 他のデバイス
パフォーマンスやその他のアイドル タイプの詳細については、この SO の投稿を参照してください。
于 2010-04-07T00:47:22.797 に答える