0

我正在尝试编写一个系统服务,它可以检测用户是否处于活动状态,如果没有,则启动一个进程。我正在使用一项服务,因为无论用户是否登录,我都希望它能够工作。我一直在尝试连接 user32.dll API 并检索自上次用户输入以来的时间。但是,返回的整数始终为 0,所以我认为它不能正常工作。作为系统服务运行时这是不可能的吗?

4

1 回答 1

1

您可能想getlastinputinfo在 user32.dll上使用

<DllImport("user32.dll")> _
Shared Function GetLastInputInfo(ByRef plii As LASTINPUTINFO) As Boolean
End Function

<StructLayout(LayoutKind.Sequential)> _
    Structure LASTINPUTINFO
    <MarshalAs(UnmanagedType.U4)> _
    Public cbSize As Integer
    <MarshalAs(UnmanagedType.U4)> _
    Public dwTime As Integer
End Structure

MSDN 上的LASTINPUTINFO

于 2011-06-09T08:32:41.090 回答