0

在我的应用程序中,当用户想要休息并单击注销按钮时,我想完成两件事。

  1. 锁定机器
  2. 启动一个自定义屏幕保护程序,显示用户注销的时间。

我设法通过以下方式轻松完成锁定:

[DllImport("user32.dll")]
private static extern void LockWorkStation();

我找到了有关如何制作自定义屏幕保护程序的教程。我下载了示例代码,它运行良好。但是当我添加LockWorkStation(); 行它杀死了屏幕保护程序。

你能帮我解决这个问题或建议一个解决方法吗?

编辑

教程中的这个屏幕保护程序只是 w WinForm。我应该以某种方式将其安装到系统中吗?是否有可能形成我的应用程序级别?

4

1 回答 1

2

最有可能的解决方案如下:

  1. 锁定工作站
  2. 显示屏幕保护程序

对于第二步,以下内容很重要:

您的应用程序只是一个显示窗口的程序。因此,当工作站被锁定时,它尝试显示的任何窗口都不会显示给用户。仅当您将程序注册为真正的屏幕保护程序,将其设置为当前屏幕保护程序并启动它(例如使用消息)
时,才会显示您的窗口。SC_SCREENSAVE

于 2012-09-21T12:37:57.130 回答