用VB设计更换屏幕保护的程序

用VB设计更换屏幕保护的程序,第1张

用VB设计更换屏幕保护的程序,第2张

做一个我公司的屏保,在客户运行我公司的应用软件时给他们换屏保,是一个很好的方法。很多朋友都问过这个问题,答案如下:

要替换屏幕保护程序,必须先制作一个屏幕保护程序(scr文件)。本例以Project 1.scr的文件为例。因为windows将屏保文件存储在system中,但是记录屏保文件位置的文件是windows目录下的system.ini,所以首先要搞清楚Windows的确切安装位置和系统的系统目录。因此,可以按以下步骤进行:

1.找到windows和系统目录的安装位置。

2.将屏幕保护文件复制到系统目录。

3.在system.ini中写入[boot]:

Scrnsave.exe = c:\视窗\系统\工程1。教员公用室

4.告诉系统切换屏保。

以下示例成功更改了屏幕保护程序。所有源代码如下:

获取windows目录。

私有声明函数getwindows directory Lib " kernel 32 "别名" getwindows directory ya "(ByVal LP buffer为String,ByVal nSize为Long)为Long

修改system.ini
Private Declare函数WritePrivateProfileString Lib " kernel 32 " Alias " WritePrivateProfileString a "(ByVal lpApplicationName为String,ByVal lpKeyName为Any,ByVal lpString为Any,ByVal lplFileName为String)Long

获取系统目录
私有声明函数getsystemdirectory lib "kernel32 "别名" getsystemdirectorya "(byval LP buffer为string,byval nsize为long)为long。

设置屏幕保护程序
Private Const SPI _ setscreensavetime = 15
Private Const SPI _ setscreensaveactive = 17
Private Const SPIF _ UPDATEINIFILE = & H1
Private Const SPIF _ sendwinichange = & H2

私有声明函数SystemParametersInfo Lib "user32 "别名" system parameters infoa "(ByVal u action为Long,ByVal uParam为Long,ByVal lpvParam为Long,ByVal fuWinIni为Long)为Long

启用屏幕保护程序
私有声明函数sendmessage lib“user 32”别名“sendmessage a”(byval hwnd为long,byval wmsg为long,byval wparam为long,lparam为any)为long。

私有常量WM_SYSCOMMAND = &H112
私有常量SC_SCREENSAVE = &HF140

Privateform _ load ()
'获取系统目录
Dim sSave As String,Ret As Long
sSave = Space(255)
Ret = Get system directory(sSave,255)
sSave = Left$(sSave,Ret)
'将屏保复制到系统目录
FileCopy App。Path & "\ engineering 1.scr ",sSave & "\ engineering 1。SCR"
'并获取windows目录
Dim Path As String,str save As String
str save = String(250,Chr $(0))
Path = Left $(str save,GetWindowsDirectory(strSave,Len(strSave))
' Modify system . ini
Dim r As long
Diminipath As String
ini Path $ = Path+" \ system . ini "/brSCR ",IniPath)
'将时间间隔设置为1分钟=60秒
LRET = system parameter info(SPI _ setscreensavetime out,60,ByVal0 &,
spif _ updateinifile+spif _ sendwinichange)
'设置屏幕保护程序
Retval = system parameter sinfo(SPI _ setscreensaveactive,true,0,0)
'启动屏幕保护程序
dim result as long

本例运行在VB6.0+win95下。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 用VB设计更换屏幕保护的程序

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情