public bool ÄrAktiv() { int idleTid = 0; var lastInput = new Lastinputinfo(); lastInput.cbSize = (UInt32) Marshal.SizeOf(lastInput); lastInput.dwTime = 0; int envTicks = Environment.TickCount; if (GetLastInputInfo(ref lastInput)) idleTid = envTicks - (int) lastInput.dwTime; return (idleTid/1000) < _intervall; }
public int GetInactivityTime() { var lastInputInfo = new Lastinputinfo(); lastInputInfo.CbSize = (uint) Marshal.SizeOf(lastInputInfo); lastInputInfo.DwTime = 0; var envTicks = (uint) Environment.TickCount; if (!GetLastInputInfo(ref lastInputInfo)) return 0; var lastInputTick = lastInputInfo.DwTime; var idleTime = envTicks - lastInputTick; return (int) idleTime/1000; }
private static extern bool GetLastInputInfo(ref Lastinputinfo plii);
public static extern bool GetLastInputInfo(ref Lastinputinfo plii);