Unter Windows2000 gibt es die
API GetLastInputInfo(). das wäre am einfachsten, glaube ich.
Delphi-Quellcode:
function LastInput: boolean;
var LInput : tagLASTINPUTINFO;
const TIMELIMIT = 10000;
begin
result := false;
LInput.cbSize := SizeOf(tagLASTINPUTINFO);
GetLastInputInfo(LInput);
if (GetTickCount - LInput.dwTime) > TIMELIMIT then result := true;
end;