| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Runtime.InteropServices;
- using System.Text;
- //----------------------------------------------------------------
- //Module Name: $safeprojectname$
- //Purpose:
- //CopyRight: Muchinfo
- //History:
- //----------------------------------------------------------------
- //DateTime 2016/12/21 17:19:12
- //Author
- //Description Create
- //----------------------------------------------------------------
- namespace Muchinfo.MTPClient.Infrastructure.Utilities
- {
- public class GetLastInputInfoHelper
- {
- [DllImport("user32.dll")]
- internal static extern bool GetLastInputInfo(ref LASTINPUTINFO plii);
- /// <summary>
- /// 获取鼠标键盘不活动的时间
- /// </summary>
- /// <returns>结果</returns>
- public static int GetLastInputTime()
- {
- LASTINPUTINFO lastInputInfo = new LASTINPUTINFO();
- lastInputInfo.cbSize = Marshal.SizeOf(lastInputInfo);
- lastInputInfo.dwTime = 0;
- int idleTime = 0;
- if (GetLastInputInfo(ref lastInputInfo))
- {
- idleTime = Environment.TickCount - lastInputInfo.dwTime;
- }
- return ((idleTime > 0) ? (idleTime / (1000*60)) : 0);
- }
- }
- [StructLayout(LayoutKind.Sequential)]
- internal struct LASTINPUTINFO
- {
- [MarshalAs(UnmanagedType.U4)]
- public int cbSize;
- [MarshalAs(UnmanagedType.U4)]
- public int dwTime;
- }
- }
|