以编程方式中断活动屏幕保护程序?

bla*_*k3r 8 .net c# windows screensaver winforms

原因:我正在开发一个需要在桌面上显示信息的紧急警报应用程序.当客户端收到警报时,会弹出一个窗口.如果屏幕保护程序处于活动状态或监视器处于待机状态,则警报将不可见.我想知道是否可以通过某种程序鼠标移动或系统调用来唤醒计算机,以便警报可见.我认为鼠标移动或按键唤醒它的原因是因为硬件中断所以可能无法实现.

目前,该项目正在C#中实施.我很想知道有关Windows,MAC和Linux的解决方案.

这是客户要求.我考虑过以下几点:

  • 在大多数计算机不活动后,用户必须登录.那些电脑不会收到警报
  • 如果屏幕保护程序处于活动状态,则很有可能无论如何都没有人在计算机上.

我不是想:

  • 防止屏幕保护程序或节能模式一起激活.

EKS*_*EKS 4

根据 fbonnet 所说,要使用C#知识库文章中显示的功能, pinvoke.net站点是一个很好的资源。他们在这里也有一篇关于该PostMessage功能的文章。

因此,让代码正常工作的基本方法可以是搜索pinvoke.net站点上的知识库文章中列出的函数。 或者您可以阅读这篇文章,它已经为您做到了这一点。