如何在installshield基本MSI项目中添加.NET Framework 4.5.2的先决条件检查

时间:2017-01-23 13:51:12

标签: installation windows-installer installshield installshield-2015

我将通过installshield安装.NET应用程序。我的.NET应用程序依赖于.NET framework 4.5.2。因此,如果安装开始后在系统上找不到.NET framework 4.5.2先决条件,我不希望继续安装。如何在Installshield 2015中实现这一目标?

UPDATE :当我按照Shahzad的建议尝试使用distributables路线时,我得到以下错误:

  

您的项目包含installshield先决条件。 setup.exe安装程序   发射器是必需的。

我正在进行的项目是一个基本的MSI项目。我发现应该创建一个setup.exe作为输出来解决此错误,但我没有看到here建议的任何setup.exe标签。我会在Project Assistant标签的某处或Installation Designer标签下看到它吗?

3 个答案:

答案 0 :(得分:3)

我正在详细阐述自定义软件条件方法,以便在遇到任何困难时对某人有所帮助。当您只想检查是否存在注册表项时,自定义软件条件就足够了。

在我的特定场景中,除了检查是否存在注册表项之外,我还必须将特定注册表项的值与预定义值进行比较(379893)。我通过两个步骤实现了它:

  1. Project Assistant标签。点击底部的Installation Requirements链接。
  2. 现在在左侧窗格的More Options部分下,点击Create a custom software condition链接。
  3. enter image description here

    1. 单击“欢迎使用系统搜索向导”屏幕上的“下一步”
    2. enter image description here

      1. 选择Registry Entry
      2. enter image description here

        1. 选择注册表项路径,该路径告知任何计算机上已安装的.Net框架的确切版本。在Registry Value: (Optional)字段中键入一个变量名称,该名称将存储密钥的值。此变量稍后用于创建比较条件以检查.Net框架版本的确切值。此变量将附加到名为SecureCustomProperties的属性列表中。您可以在Property Manager Behavior and Logic标签
        2. 下的Installation Designer下的Project Assistant中看到此媒体资源

          enter image description here

          1. 如果未安装所需的.Net框架版本,请输出应弹出的错误消息:
          2. enter image description here

            1. 此处形成的安装条件现在将显示在列表中,并在Modify...选项卡上选中其复选框。
            2. enter image description here

              1. 现在转到安装设计器[Tab] - >行为和逻辑 - >系统搜索。在这里,您将看到一条新记录,该记录与我们迄今为止创建的软件搜索条件相对应。右键单击该行,然后单击What do you want to do with the value?
              2. enter image description here

                1. 不要在向导的前两个屏幕上更改任何内容。在标题为Store the value in the property and use the property in an Install Condition的第三个屏幕上,选择Condition Builder单选按钮。现在单击Finish。
                2. enter image description here

                  1. 现在会弹出一个新的Condition窗口。双击DOTNETFRAMEWORKRELEASEVERSIONVALUE >= "#379893"列进行更改。将条件更改为<kendo-chart> <kendo-chart-title text="Gross domestic product growth /GDP annual %/"> </kendo-chart-title> <kendo-chart-legend position="top" orientation="horizontal"> </kendo-chart-legend> <kendo-chart-tooltip format="{0}%"> </kendo-chart-tooltip> <kendo-chart-series> <kendo-chart-series-item *ngFor="let item of series" type="donut" [data]="item.data" [name]="item.name"> <kendo-chart-series-item-labels> </kendo-chart-series-item-labels> </kendo-chart-series-item> </kendo-chart-series> </kendo-chart> 。您可以根据this链接上的详细信息,根据要检查的.Net框架更改条件。
                  2. enter image description here

答案 1 :(得分:1)

您可以在Project Assistant标签下的安装要求中选择.Net框架的版本。或者您也可以指定是否希望.net Framework作为安装的一部分从安装设计器(Tab) - &gt;安装。应用程序数据(左窗格中的导航节点) - &gt;再分发

您还可以从 Project Assistant - &gt;创建自定义要求。安装要求 - &gt;创建自定义软件条件。从下拉列表中选择注册表项进行搜索。在下一步中,您可以提供注册表根,注册表项路径和要查找的值。

您还可以查看如何设置Registry Comparison Settings

答案 2 :(得分:-1)

我们必须更改的条件如下: enter image description here