有没有办法检查是否已安装.NET Framework 4并仅在不在系统中时安装它?
我知道,如果通过检查以下注册表项来安装.NET Framework 4,我如何确定?
hasDotnet4 :=
RegKeyExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\.NETFramework\policy\v4.0');
Run Code Online (Sandbox Code Playgroud)
如何根据上述检查有条件地运行.NET Framework 4安装?
TLa*_*ama 28
最简单的方法是使用Check参数,该参数允许您控制是否[Files]将提取该部分中的某个文件,或者是否[Run]将执行该部分中的某个程序.以下脚本代码显示了.NET Framework 4的条件安装的用法:
[Files]
Source: "dotNetFx40_Full_setup.exe"; DestDir: {tmp}; \
Flags: deleteafterinstall; Check: FrameworkIsNotInstalled
[Run]
Filename: "{tmp}\dotNetFx40_Full_setup.exe"; Check: FrameworkIsNotInstalled
[Code]
function FrameworkIsNotInstalled: Boolean;
begin
Result :=
not RegKeyExists(
HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\.NETFramework\policy\v4.0');
end;
Run Code Online (Sandbox Code Playgroud)