找回密码
 加入
搜索
查看: 8523|回复: 10

[相关工具] 系统静默补丁安装器(可自动跳过已安装补丁)

[复制链接]
发表于 2011-11-10 14:22:19 | 显示全部楼层 |阅读模式
稍微修改了下,让程序在没有hotfix目录时不会暴挫。 使用该程序只需(相对本程序)在hotfix目录下放至所有补丁程序即可。 安装过程中会自动检测 注册 表跳过已安装的补丁程序,减少重复补丁的时间浪费。 发该源代码只为了新手入门学习,若程序存在各种缺陷待
                                                                                稍微修改了下,让程序在没有hotfix目录时不会暴挫。

使用该程序只需(相对本程序)在hotfix目录下放至所有补丁程序即可。
安装过程中会自动检测注册表跳过已安装的补丁程序,减少重复补丁的时间浪费。
发该源代码只为了新手入门学习,若程序存在各种缺陷待会员们修正并回帖共享!
源代码:
;---------------------------------------
#Include <File.au3>
Local Const $hklm="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\HotFix"
;判断hotfix目录是否存在
If Not FileExists(@ScriptDir&"\hotfix") Then
DirCreate(@ScriptDir&"\hotfix")
MsgBox(64,"Error","未发现补丁程序,请将所有补丁程序拷贝至hotfix目录后在试!")
Exit
EndIf
ToolTip(@CR&"正在安装系统补丁,请稍后!"[email=&@CR,@DesktopWidth- 260,@DesktopHeight-120]&@CR,@DesktopWidth-260,@DesktopHeight-120[/email])
;读取已安装补丁
Local $i=1,$Exists=""
While 1
$Exists&=RegEnumKey($hklm,$i)
If @Error Then ExitLoop
$i+=1
WEnd
;打印列表并安装所有补丁
$i=1
Local $List=_FileListToArray(@ScriptDir&"\hotfix","*",1)
While $i<=$List[0]
$FixName=StringSplit($List[$i],"-")
$FixName=$FixName[2]
If Not StringInStr($Exists,$FixName) Then
RunWait(@ScriptDir&"\hotfix\"&$List[$i]&" /quiet /passive /norestart")
EndIf
$i+=1
WEnd
msgbox(64,"ok","Finish.")
发表于 2011-11-10 18:39:00 | 显示全部楼层
沙发/////////////............,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
发表于 2011-11-18 20:30:39 | 显示全部楼层
谢谢分享。。。
发表于 2012-7-14 10:42:19 | 显示全部楼层
可以。。。。。。。。。。。。。。。
发表于 2012-11-7 22:53:16 | 显示全部楼层
谢谢分享。注册表位置!!
发表于 2012-11-11 18:51:22 | 显示全部楼层
回复 1# 5238869


    简单有效就是好
发表于 2012-12-19 22:37:43 | 显示全部楼层
感謝大大分享
发表于 2013-7-23 21:13:31 | 显示全部楼层
收藏,备用
发表于 2013-10-14 23:39:06 | 显示全部楼层
回复 1# 5238869
"G:\1\333.au3"(9,48) : error: 表达式错误
ToolTip(@CR&"正在安装系统补丁,请稍后!"[email=&
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
"G:\1\333.au3"(9,133) : error: 表达式错误
ToolTip(@CR&"正在安装系统补丁,请稍后!"[email=&@CR,@DesktopWidth- 260,@DesktopHeight-120]&@CR,@DesktopWidth-260,@DesktopHeight-120[/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
"G:\1\333.au3"(9,47) : error: email(): 未定义的函数.
ToolTip(@CR&"正在安装系统补丁,请稍后!"[email=
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
G:\1\333.au3 - 3 错误, 0 警告
发表于 2014-3-1 23:58:43 | 显示全部楼层
谢谢楼主分享了
发表于 2017-9-16 19:57:56 | 显示全部楼层
谢谢楼主分享
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-3-28 21:15 , Processed in 0.073599 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表