软件安装注册表判断
大家好从论坛搜寻到以下程式码:
$i=1
$Regkey="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"
While 1
$i=$i+1
$var = RegEnumKey($Regkey, $i)
If $var="Microsoft .NET Framework 4 Client Profile" Then
MsgBox(0,"Auto Install Script","Microsoft .NET Framework 4 Client 已安装")
If @error <> 0 then ExitLoop
ExitLoop
EndIf
WEnd
;~ RunWait("dotNetFx40_Full_x86_x64.exe /norestart /passive ")
;~ msgbox(0, " Auto Install Script ", " dotNET Framework 4.0 安装完成 ",1)
目前已经可以判断出有安装这个DFN4这软件,可是机器上要是没有安装这软件,该怎么把最後两行程式码加进去,好让机器开始安装。 这样OK吗?
$i=1
$Regkey="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"
While 1
$i=$i+1
$var = RegEnumKey($Regkey, $i)
If $var="Microsoft .NET Framework 4 Client Profile" Then
MsgBox(0,"Auto Install Script","Microsoft .NET Framework 4 Client 已安装")
Else
RunWait("dotNetFx40_Full_x86_x64.exe /norestart /passive ")
If $var="Microsoft .NET Framework 4 Client Profile" Then msgbox(0, " Auto Install Script ", " dotNET Framework 4.0 安装完成 ",1)
If @error <> 0 then ExitLoop
ExitLoop
EndIf
WEnd
感谢 502762378 回答
测试过,这样子还是会直接运行安装,并没有因为已经安装过而跳过安装。
後来有查到dnf的资料夹位置在WINDOWS\Microsoft.NET\Framework
就改用FileExists,暂时解决这问题。
如果您能再帮忙想想,小弟不胜感激。
因为这样可以用来判断注册表,将来应用的范围很大。
页:
[1]