


























http://www.pinvoke.net/default.aspx/user32.GetLastInputInfo
[StructLayout(LayoutKind.Sequential)] public struct LASTINPUTINFO { [MarshalAs(UnmanagedType.U4)] public int cbSize; [MarshalAs(UnmanagedType.U4)] public uint dwTime; } static class NativeMethods { /// <summary> /// 获取上一次输入的时间。 /// </summary> /// <param name="plii"></param> /// <returns>true:获取成功。false:获取失败。</returns> [DllImport("user32.dll")] public static extern bool GetLastInputInfo(ref LASTINPUTINFO plii); /// <summary> /// 获取上一次操作后的闲置时间。 /// </summary> /// <returns>闲置时间的毫秒数。</returns> public static long GetIdleTick() { LASTINPUTINFO vLastInputInfo = new LASTINPUTINFO(); vLastInputInfo.cbSize = Marshal.SizeOf(vLastInputInfo); if (!GetLastInputInfo(ref vLastInputInfo)) return 0; return Environment.TickCount - (long)vLastInputInfo.dwTime; } }
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。