怎么辨别计算机在一定时间段内没有进行鼠标和键盘的操作

如何辨别计算机在一定时间段内没有进行鼠标和键盘的操作?
如题,想判断计算机在一定时间段内没有进行鼠标和键盘的操作。
起初想用键盘和鼠标的全局Hook,但杀毒软件和xp的数据保护会禁止这样的操作,大家有什么好的办法么?

------解决方案--------------------
不断的Get...
------解决方案--------------------
C/C++ code
LASTINPUTINFO lpi = { 0 };
lpi.cbSize = sizeof(lpi);
::GetLastInputInfo(&lpi);
// lpi.dwTime 就是上次输入事件发生以后的毫秒数

------解决方案--------------------
强老妖同志个分
C/C++ code

void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
  DWORD StartTime,EndTime;
  StartTime = GetTickCount();
  LASTINPUTINFO lpi = { 0 };
  lpi.cbSize = sizeof(lpi);
  ::GetLastInputInfo(&lpi);
 Label1->Caption =   "系统空闲了" +IntToStr((int)(StartTime - lpi.dwTime  ))+"ms";
}

------解决方案--------------------
留个印,GetLastInputInfo