1

プログラムで特定のWindowsXPマシンのユーザー入力から現在のアイドル時間を知りたいです。MSAccessでVBAを使用しています。どのようなオプションがありますか?

4

1 に答える 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 に答える