窗口锁定时屏幕保护程序如何工作
谁能告诉我窗口锁定时屏幕保护程序如何工作。使用了哪些 win32 api 方法。
can anyone tell me how screensaver works while windows is locked. what are the win32 api methods that are used.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您拥有的唯一旋钮是用于锁定工作站的 LockWorkStation() 和用于激活屏幕保护程序的 SystemParametersInfo()、SPI_SETSCREENSAVEACTIVE。其他一切,例如切换桌面、查找选定的屏幕保护程序、加载并启动它都隐藏在 Windows 中。我猜是crss.exe。您的问题太模糊,无法提供除此之外的帮助。
The only knobs you have are LockWorkStation() to lock the workstation and SystemParametersInfo(), SPI_SETSCREENSAVEACTIVE to activate the screen saver. Everything else, switching the desktop, looking up the selected screen saver, loading and starting it is buried inside Windows. I'd guess at crss.exe. Your question is too vague to offer help beyond this.
您想要实施屏幕保护程序吗?或者您知道屏幕保护程序如何在计算机锁定时运行吗?在 XP 上有一个单独的桌面,当计算机锁定时,该桌面由 GINA(在 winlogon 进程中运行的 DLL)激活。
要实现屏幕保护程序,请根据 MSDN 上的规范实现
ScreenSaverConfigureDialog
和ScreenSaverProc
,并以这些名称导出这些函数(即使用 .def 文件来获得不带名称的名称)。装饰),然后将创建的 DLL 命名为 .scr。Do you want to implement a screen saver or do you know how the screen saver can run while the machine is locked? On XP there is a separate desktop for this, which gets activated by the GINA (a DLL running in the winlogon process) when the machine is locked.
To implement a screen saver, implement
ScreenSaverConfigureDialog
andScreenSaverProc
according to the specifications over at MSDN, export those functions under these names (i.e. use a .def file to have the names without decoration) and name the created DLL .scr afterwards.