我想为计算机实验室创建程序。实验室中的计算机运行Windows 7,并通过LAN连接。当PC与LAN断开连接时,该程序应冻结键盘和鼠标,并显示全屏消息。
当前,我已经创建了该程序的第一个版本,该版本几乎可以正常运行。它与启动一起运行。但是问题在于用户可以从任务管理器中将其杀死。我尝试过将其作为Windows服务运行,并且可以运行,但无法与桌面交互,因此无法冻结键盘和鼠标。
任何建议都值得赞赏。预先感谢。
答案 0 :(得分:0)
所以我终于解决了。 我的程序无法与桌面交互的原因是它在会话0中运行。 这是因为Windows服务在会话0中运行,并且不能直接与桌面交互。这里的互动是指接收键盘,鼠标事件以及在用户桌面中创建或访问窗口。
因此,我创建了一个使用SYSTEM帐户运行的服务。它将在用户会话中创建“冻结过程”。同样,此过程将使用SYSTEM帐户运行,因此普通用户将没有特权进行杀死。