#include <Array.au3>
Dim $i = 1, $RegN[1]
;遍历已安装程序
Const $root = 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall'
While 1
$nMsg = GUIGetMsg()
$v = RegEnumKey($root, $i)
If @error <> 0 Then
ExitLoop
Else
$n = RegRead($root & '\' & $v, 'DisplayName')
$u = RegRead($root & '\' & $v, 'UninstallString')
If $n <> '' And $u <> '' Then
_ArrayAdd($RegN, $n)
EndIf
EndIf
$i += 1
WEnd
Local $aiResult = _ArrayBinarySearch($RegN, "Microsoft")
_ArrayDisplay($RegN, "第一次")
_ArrayDisplay($aiResult, "第二次")
搜索“Uninstall”键值下面是否包含 “Microsoft”
我用了 _ArrayBinarySearch 貌似不行。 |