not an extensive search but I found these articles on the subject as well.

Validated Idle Time Detection
http://csdl.ics.hawaii.edu/techreports/01-04/01-04-idle.html

Detecting Application Idleness
http://www.codeproject.com/csharp/ApplicationIdle.asp

Getting the user idle time with C#
http://www.codeproject.com/csharp/GetIdleTimeWithCS.asp

How to Use the VTune™ Performance Analyzer to Detect Idle Time
http://www.intel.com/cd/ids/developer/asmo-na/eng/dc/threading/knowledgebase/43812.htm

How can I detect user activity?
http://groups.google.com/group/microsoft.public.win32.programmer.wmi/msg/cfce0781c5d63e55

HOW TO: Detect User Idle Time or Inactivity in Access 2000
http://support.microsoft.com/?kbid=210297