http://computer.bowenwang.com.cn/screensaver3.htm
接下来,我们将了解屏幕保护程序在Windows 95/98计算机上运行的详细过程。对于其他计算机来说,虽然系统命令和确切细节可能有所不同,但过程基本上都是相同的。
计算机 会持续监视系统各个组件之间正在进行的活动。如果系统发现,键盘 和鼠标 空闲的时间已经达到了“显示属性”窗口的屏幕保护程序设置 中 指定的时间长度,那么它会向前台(当前)应用程序发送一条特殊命令,询问能否启动屏幕保护程序。如果作为前台应用程序运行的应用程序中打开了计算机辅助训 练(CBT)窗口,或者带有非Windows程序(例如从MS-DOS命令提示窗口中运行的程序),则Windows不会启动屏幕保护程序。
以下是详细过程说明:
- 为了确定能否启动屏幕保护程序,Windows向前台应用程序 发送一条消息。此命令询问该应用程序:“我能启动屏幕保护程序吗?”非Windows程序无法理解这条命令,因而不会应答。而CBT应用程序能理解这条命令,但它会用一条表示“请不要启动,我正在提供培训。”的命令来响应。所有其他应用程序都应对此命令做出肯定的响应。
- 随后,Windows会查看system.ini文件中的行SCRNSAVE.EXE=____ ,确定是否已指定屏幕保护程序。如果该条目为空,则忽略执行屏幕保护程序的命令。但如果列有文件名,它便会尝试加载该文件。只要列出的文件确实是屏幕保护程序,系统便会执行该程序,并在当前桌面的最上层创建屏幕保护程序图像。
- 在Windows检测到来自键盘或鼠标的输入之前,屏幕保护程序将一直运行。对于大多数屏幕保护程序来说,晃动鼠标或按下任意键便能立即 终止屏幕保护程序。但也可以对屏幕保护程序进行编程,要求仅当按下特定键或按钮,或者当鼠标移动一定的距离时,屏幕保护程序才会停止。此功能在交互式屏幕 保护程序中特别有用。
- 当Windows获得应终止屏幕保护程序的输入时,它会查看密码保护功能是否已开启。如果已开启,则弹出一个框,要求输入用户名和密码。反之,屏幕保护程序将立即终止。
当启用了密码保护功能 时,如果未能提供正确的用户名和密码,则Windows将继续运行屏幕保护程 序。虽然这能提供某种程度的安全性,但请务必记住,Windows 95/98屏幕保护程序会创建自己的密码对话框,再从系统处请求密码和用户信息。如果对屏幕保护程序来源的可靠性并不十分确定,则应谨慎使用密码保护功 能。黑客可以(也确实有过这样的真实案例)创建一些屏幕保护程序,利用这一系统安全弱点来捕获密码。运行Windows NT的系统则不存在这个问题,NT系统仅允许屏幕保护程序调出系统密码对话框,而不能自行创建。