爱心论坛互帮互助平面设计 网页设计 → 如何编写屏保

分享到:

  共有2800人关注过本帖树形打印复制链接

主题:如何编写屏保

帅哥哟,离线,有人找我吗?
小猴乖乖
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 等级:小飞侠 帖子:1750 精华:30 积分:16454 金钱:27454 金币:0 魅力:9296 威望:0 登陆:335 注册:2007/4/5 13:51:22 近访:2010/8/25 14:55:41 在线:在线0天0小时0分钟.
离升级差0天20小时0分钟.
目前等级0
如何编写屏保  发帖心情 Post By:2007/8/23 7:13:46 [只看该作者]

贴子已被锁定

如何编写屏保

关键词:VBScript

The basic requirements for creating a screen saver are: 

In the properties for your application set the title to: 

SCRNSAVE: name

The ’name’ part will appear on the list of available screen savers in the control panel. Note that this is not the title of the form, it is the application title and must be set in the project properties. 

When you compile the program use .SCR for the extension instead of .EXE as normal. Place the compiled code in the Windows\System directory (it can also go in Windows, but System is preferred) 
When your application starts check for a previous instance and stop if one is found: 

Sub Form_Load()
If App.PrevInstance Then
  Unload Me ’ NEVER use END!
  Exit Sub
End If

End Sub

Check the command line for switches: 

/s setup mode - display/update configuration options only
/p nnn preview mode - "nnn" is a handle to the preview window
/a password support check

If the screen saver is to run normally use the following to tell Windows that you are taking over as a screen saver (this will disable ALT-TAB and CTRL-ALT-DEL and prevent more instances from being started): 

Private Const SPI_SCREENSAVERRUNNING=97
Private Declare Function SystemParametersInfo Lib "user32" _
  Alias "SystemParametersInfoA" (ByVal uAction As Long, _
  ByVal uParam As Long, lpvParam As Any, _
  ByVal fuWinIni As Long) As Long
SystemParametersInfo SPI_SCREENSAVERRUNNING, 1, ByVal 1&, False
Before your code terminates tell Windows you are leaving with:
SystemParametersInfo SPI_SCREENSAVERRUNNING, 0, ByVal 1&, False

For more information, including sample code that handles password protected screen savers check http://www.arcatapet.com/vb.html or http://www.tiac.net/users/lvasseur/ 

 回到顶部