'code by LZ-MyST QQ:8450919 http://hi.baidu.com/lzmyst
'此脚本目的是:调用讯闪3.1的更新核心程序,每次开机后运行此脚本都会更新一次,而且只更新一次,不重
启不会重复更新
'另外,你可以自定义版本号,这时,和使用菜单的效果是一样的,不管你重启多少次,版本号不变的时候是不
会更新的
On Error Resume Next
dim FSO,WshNetwork,WSH,LoginProfiles,ComputerName,UserName,Ver
Set LoginProfiles = GetObject("winmgmts:").InstancesOf ("Win32_NetworkLoginProfile")
Set WSH=wscript.createobject("wscript.shell")
Set FSO = CreateObject("Scripting.FileSystemObject")
Set WshNetwork = WScript.Createobject("WScript.Network")
ComputerName = WshNetwork.ComputerName
UserName = WshNetwork.UserName
for each Profile in LoginProfiles
if Profile.Name=ComputerName&"\"&UserName then
Ver=Left(Profile.LastLogon,14)
end if
next
'讯闪3.1的各项参数设置
LoadPath = "F:\常用软件备份\讯闪服务端\data\load.exe" '讯闪3.1更新核心程序路径
Arg01 = "\\gameupserver\game$\qq" '远程目录
Arg02 = "D:\windows\qq" '本地目录
Arg03 = "[腾讯QQ]正在更新,请稍等..." '窗口标题
Arg04 = "D:\windows\qq\qq.exe" '更新完成后运行的程序
Arg05 = "" '更新完成后执行程序的运行参数
Arg06 = "D:\windows\qq\qq.reg" '注册表的路径
Arg07 = Ver '版本号(这里使用开机时间做版本号,自定义时需用引号括起版本号,例:Arg14 =
"123")
Arg08 = "1" '更新模式,1---马上更新 其它---手动选择
Arg09 = "0" '未知参数,必加
Arg10 = "0" '未知参数,必加
'生成讯闪3.1的更新参数
Dim Arg
Arg = " "&Chr(34) & "/fdir:" & Arg01 & Chr(34)_
&" "&Chr(34) & "/tdir:" & Arg02 & Chr(34)_
&" "&Chr(34) & "/name:" & Arg03 & Chr(34)_
&" "&Chr(34) & "/Run:" & Arg04 & Chr(34)_
&" "&Chr(34) & "/cmd:" & Arg05 & Chr(34)_
&" "&Chr(34) & "/reg:" & Arg06 & Chr(34)_
&" "&Chr(34) & "/ver:" & Arg07 & Chr(34)_
&" "&Chr(34) & "/now:" & Arg08 & Chr(34)_
&" "&Chr(34) & "/f_f:" & Arg09 & Chr(34)_
&" "&Chr(34) & "/f_d:" & Arg10 & Chr(34)
Dim VerFile,VerPrefix,VerNumber,LocalFolder
VerFile = FSO.GetAbsolutePathName(Arg02) & "\$ver.txt" '存有版本的文件名
VerPrefix = "2=" '保存版本的字段
VerNumber = Arg07 '版本号
LocalFolder = FSO.GetAbsolutePathName(Arg02) '本地目录的明确完整的路径
RunProfile = Arg04 '游戏主程序
If Not FSO.FileExists(VerFile) Then '如果版本文件不存在
SubShowFolder LocalFolder '检查本地目录是否存在
WSH.Run LoadPath & Arg '更新
Else
If SubReadVer Then '版本文件存在时,判断版本号
WSH.Run RunProfile '版本号相同,运行游戏程序
Else
SubShowFolder LocalFolder '检查本地目录是否存在
WSH.Run LoadPath & Arg '版本号不相同,更新
End If
End If
'如果指定目录不存在则创建(同时检查父目录是否存在)
Function SubShowFolder(FolderPath)
If Not FSO.FolderExists(FolderPath) Then
SubShowFolder FSO.GetParentFolderName(FolderPath)
Set FD = FSO.CreateFolder(FolderPath)
End If
End Function
'从版本文件里读出版本,并与指定的版本对比,相同则返回True,否则返回False
Function SubReadVer()
Set F = FSO.OpenTextFile(VerFile)
While F.AtEndOfLine <> True
V = F.ReadLine
Vn = InStr(V,VerPrefix)
If Vn > 0 Then
If CStr(VerNumber) = CStr(Right(V,Len(V)-Len(VerPrefix))) Then
SubReadVer = True
Exit Function
End If
End If
SubReadVer = False
Wend
End Function