【问题标题】:How Screensaver works while windows lockedWindows 锁定时屏幕保护程序的工作原理
【发布时间】:2011-03-02 05:02:01
【问题描述】:

谁能告诉我在 Windows 被锁定时屏幕保护程序是如何工作的。使用的win32 api方法有哪些。

【问题讨论】:

  • 这会无缝地发生,您无需做任何特别的事情。您是在尝试创建一个可以做到这一点的屏幕保护程序,还是只是好奇 Windows 在后台是如何工作的?

标签: winapi screensaver


【解决方案1】:

您仅有的旋钮是 LockWorkStation() 来锁定工作站和 SystemParametersInfo(),SPI_SETSCREENSAVEACTIVE 来激活屏幕保护程序。其他一切,切换桌面,查找选定的屏幕保护程序,加载和启动它都隐藏在 Windows 中。我猜是crss.exe。您的问题太模糊,无法提供除此之外的帮助。

【讨论】:

    【解决方案2】:

    您想实现屏幕保护程序,或者您知道在机器锁定时如何运行屏幕保护程序吗?在 XP 上有一个单独的桌面,当机器被锁定时,它会被 GINA(一个在 winlogon 进程中运行的 DLL)激活。

    要实现屏幕保护程序,请根据 MSDN 上的规范实现 ScreenSaverConfigureDialogScreenSaverProc,以这些名称导出这些函数(即使用 .def 文件具有没有修饰的名称)并命名创建的 DLL .scr 之后。

    【讨论】:

    • 其实我想知道的是锁屏时屏保的运行情况。
    • 然后,正如我所说:当您锁定时,GINA 会处理这些问题。您甚至可以通过实现自己的 GINA 来实现它。在 Vista 中,GINA 不再存在,但屏幕保护程序拥有自己的桌面和登录提示拥有自己的桌面的原则仍然有效。
    猜你喜欢
    • 2021-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-15
    • 1970-01-01
    • 2011-12-29
    • 1970-01-01
    相关资源
    最近更新 更多