Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Installation 安装引导程序如何检测是否安装了先决条件?_Installation_Wix_Windows Installer_Bootstrapper - Fatal编程技术网

Installation 安装引导程序如何检测是否安装了先决条件?

Installation 安装引导程序如何检测是否安装了先决条件?,installation,wix,windows-installer,bootstrapper,Installation,Wix,Windows Installer,Bootstrapper,试图解决这个问题 我想了解引导程序如何检测是否安装了先决条件(特别是.NET3.5) 根据,检测是否安装了.NET的一种方法是检查以下注册表项: HKEY\U LOCAL\U MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 使用process monitor,我检查了引导程序(setup.exe)执行的注册表查询,它没有显示对此注册表项的任何访问权限 有人知道引导程序如何确定是否在目标系统上安装了必备软件吗?msbuild Gene

试图解决这个问题

我想了解引导程序如何检测是否安装了先决条件(特别是.NET3.5)

根据,检测是否安装了.NET的一种方法是检查以下注册表项:

HKEY\U LOCAL\U MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5

使用process monitor,我检查了引导程序(setup.exe)执行的注册表查询,它没有显示对此注册表项的任何访问权限


有人知道引导程序如何确定是否在目标系统上安装了必备软件吗?

msbuild GenerateBottrapper软件包的必备软件包定义为XML文件。这些XML文件的模式是有文档记录的。查看“InstallChecks”元素,了解可以进行哪些类型的检查


奇怪的是,我在.NET3.5的必备软件包中找不到这样的安装检查。您可以在windows SDK文件夹(C:\Program Files\Microsoft SDK\windows)中找到此软件包,以及其他预定义的引导程序软件包。

由于某些原因,.Net的安装检查似乎位于软件包的本地化部分(请参阅bootstrapper\packages\DotNetFX35SP1\en下的package.xml)感谢Wim和Damien,这就解决了我们的问题。此问题发生在德国Windows 7安装上,并且生成计算机在SDK引导程序目录中只有子文件夹。en子文件夹包含一个package.xml,其中包含.NET注册表项()的\1033子项的注册表检查。由于某些原因,默认的德国Windows 7安装中不存在此问题。在生成计算机上调整package.xml解决了此问题,但我仍然对问题的真正根源感兴趣,以及这是Windows 7中的错误(即使在德国Windows 7上,1033子项是否也应存在)还是引导程序中的错误(检查不正确的钥匙)