如何的InstallShield基本MSI项目添加先决条件检查的Net框架4.5.2
我经历的InstallShield安装.Net应用程序。我的.Net应用程序依赖于.Net框架4.5.2。因此,如果在安装开始后没有在系统上找到.Net framework 4.5.2先决条件,我不希望安装继续进行。我如何在Installshield 2015中实现这个目标?如何的InstallShield基本MSI项目添加先决条件检查的Net框架4.5.2
UPDATE:当我试图去了distributables路线由沙赫扎德的建议,我得到以下错误:
Your project contains installshield prerequisites. A setup.exe setup launcher is required.
我在工作的项目是一个基本MSI项目。我发现它应该创建一个setup.exe
而不是输出来解决此错误,但我没有看到任何setup.exe
选项卡建议here。我会在Project Assistant
选项卡或Installation Designer
选项卡下看到它吗?
我阐述的定制软件条件的方法,这样,如果他们面对这样做有困难也可以是某人的帮助。只需要检查是否存在注册表项时,自定义软件条件就足以满足需要。
在我的具体情况,除检查注册表项的存在与否我也不得不进行比较的规定值(379893)特定的注册表键的值。我分两步实现:
- 得到
Project Assistant
标签。点击底部的Installation Requirements
链接。 - 现在下左窗格中
More Options
部分点击Create a custom software condition
链接。
- 单击下一页上欢迎到系统搜索向导屏幕
- 选择
Registry Entry
- 选择注册表键路径,它告诉在任何计算机上安装.Net框架的确切版本。在
Registry Value: (Optional)
字段中键入一个变量名称,该名称将存储该密钥的值。此变量稍后用于创建比较条件以检查.Net框架版本的确切值。该变量被附加到名为SecureCustomProperties
的属性列表中。你可以看到Installation Designer
标签上在Property Manager
此属性Behavior and Logic
下 - 将所需的.NET Framework版本没有安装应的情况下弹出该错误消息:
- 安装条件这样形成的结果现在将在列表中显示,其复选框在
Project Assistant
标签上被选中。 - 现在转到安装设计[索引] - >行为和逻辑 - >系统的搜索。在这里你会看到一个新的记录,对应于我们迄今为止创建的软件搜索条件。右键单击行,然后单击
Modify...
- 不要改变向导的前两个屏幕东西。在标题为
What do you want to do with the value?
的第三个屏幕上,选择Store the value in the property and use the property in an Install Condition
单选按钮。现在点击完成。 - 现在新的
Condition Builder
窗口弹出。双击Condition
列更改它。将条件更改为DOTNETFRAMEWORKRELEASEVERSIONVALUE >= "#379893"
。您可以根据this链接上的详细信息,根据您要检查的.Net框架更改您的条件。
可以Project Assistant
选项卡下选择安装要求的.NET Framework版本。或者你也可以指定你想被安装了.NET Framework从安装设计(TAB)安装的一部分 - >应用程序数据(导航节点在左窗格中) - >再分发
您还可以创建自定义需求从项目助理 - >安装要求 - >创建自定义软件条件。从下拉菜单中选择注册表项进行搜索。在下一步中,您可以提供注册表根,注册表项路径和值查找。
您还可以看到如何设置Registry Comparison Settings
在安装要求可用的'的Microsoft .NET Framework 4.0完全Package'以至于不能帮助增加对于.NET框架4.5.2先决条件检查的最高检查。 – RBT
@RBT如果安装了.Net 4.5,请检查您的系统。它应该出现。否则,您可以创建自己的自定义需求。在那里,您将受到向导的指导,您可以指定文件,文件夹和注册表值的搜索条件。检查相应的注册表值,您可以检查目标系统上是否安装了.NET版本。 – Shahzad
我的'.Net Framework 4.6.1'安装在我的开发箱上,但它并没有在安装需求视图中显示'.Net Framework 4.5.2'的先决条件选项。你如何提出自定义要求? – RBT