回复 7# xsjtxy
我添加了这个,为什么写不上去,一执行它就退出脚本?Func _WriteUnFixedPatchs()
$m=1
$ending='等待安装...'
$filelist=_FileListToArray(@ScriptDir & "\Update","*.exe",1)
;_GUICtrlListView_DeleteAllItems(GUICtrlGetHandle($ListView1));删除列表查看控件中的全部项目
For $i = 1 To $filelist[0]
$fen = StringRegExpReplace($filelist[$i], '.*?(KB\d+)[^\d]*?.*', '$1')
;GUICtrlCreateListViewItem($x & "|" & $FileList[$i] & "|等待安装", $ListView1);将读取到得数据写入到$ListView1
$o = 1;表示从什么位置开始枚举已经打过的补丁数
While 1;开始判断是否已经安装过此补丁。注册表路径不知道对不对。不对的改一下就可以
$var = RegEnumKey("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\HotFix", $o)
If @error <> 0 Then ExitLoop;枚局失败退出循环
$string = StringRegExpReplace($var, '.*?(KB\d+)[^\d]*?.*', '$1');afan帮助写得这句话。不明白什么意思
If $string = $fen Then
Else
GUICtrlCreateListViewItem($m & "|" & $filelist[$i] & "|" & $ending, $ListView1)
EndIf
$o += 1
WEnd
$m +=1
Next
EndFunc
|