我正在使用此代码从Windows应用程序获取本地空闲时间但是当我在服务上使用它时,它不会返回活动用户的空闲时间
function IdleTime: DWord;
var
LastInput: TLastInputInfo;
begin
LastInput.cbSize := SizeOf(TLastInputInfo);
GetLastInputInfo(LastInput);
Result := (GetTickCount - LastInput.dwTime) DIV 1000;
end;
知道吗?
提前致谢
您的服务在会话 0 的非交互式桌面中运行,因此无法访问有关交互式桌面的信息。
您需要在交互式桌面中运行进程才能获取该信息。我想你可以使用IPC机制将其传递给你的服务。即使你能得到它,你也会用这些信息做什么,我不确定。会话是隔离的。