2024年4月19日发(作者:)

用MFC写屏幕保护程序

现代显示器的很多优点,如长寿命的显示屏,液晶和能源之星能源保护模式, 已

经让屏幕保护程序的作用大大地降低. 但是,依然有大量的屏幕保护程序出现,

尤其是共享软件.

这也许是因为写屏幕保护程序是一件非常有趣的事. 因为有CRect和CGdiObject

类,这些类的绘图功能比单纯的C API函数容易得多, 所以,用MFC写屏幕保护程

序会是一件更有趣的事.

简单地和"Hello, world."应用程序比较,它不需要WinMain()函数,例如:

如果你发掘一下有哪些API函数支持产生一个屏幕保护程序,你会发现可利用的

函数非常少. 例如:用C写屏幕保护程序,大多数情况下都不需要调用

DefWindowProc函数,取而代之的是DefScreenSaverProc函数. 如果调用你自已

的函数(一般也就是三个),你可以编出一个和标准的屏幕保护程序功能一样的屏

保程序.

对所有的屏幕保护程序:

屏幕保护程序的名字和描述在字符串1中定义.

屏幕保护程序的图标为ID_APP, 在中定义为100.

WINAPI函数ScreenSaverProc必须定义和调用.

(CScreenSaverWnd模块为你填充这个API调用.)

程序必需以.SCR为扩展名.

对于可设置的屏幕保护程序:

设置屏幕保护程序的对话框为DLG_SCRNSAVECONFIGURE,在定义为2003.

WINAPI函数ScreenSaverConfigureDialog必须被定义和调用.

WINAPI函数RegisterDialogClasses必须被定义和调用.

(CScreenSaverDlg模块为你填充这个API调用.)

---------------------------------------------------------------------

---