Installation 使用Instal Shield,如何通过自定义对话框复选框安装应用程序(文件传输、预要求)

Installation 使用Instal Shield,如何通过自定义对话框复选框安装应用程序(文件传输、预要求),installation,installshield,Installation,Installshield,我试图通过创建自定义对话框来安装三个应用程序。在自定义对话框中有复选框和onclick复选框,然后执行下一步,我希望我的应用程序执行文件传输,根据选中的复选框安装Prerequirest。我希望这三个应用程序都能实现。请建议如何执行此操作,以及我们如何给出执行此操作的条件。假设您谈论的是基本MSI的自定义对话框,我建议如下: 确保每个有问题的应用程序都是单独功能的一部分。如果使用原始对话框集,这可能会让用户按要素名称选择它们,或者您可以隐藏它们。这些功能应该有有有意义的名称,如App1、App2

我试图通过创建自定义对话框来安装三个应用程序。在自定义对话框中有复选框和onclick复选框,然后执行下一步,我希望我的应用程序执行文件传输,根据选中的复选框安装Prerequirest。我希望这三个应用程序都能实现。请建议如何执行此操作,以及我们如何给出执行此操作的条件。

假设您谈论的是基本MSI的自定义对话框,我建议如下:

  • 确保每个有问题的应用程序都是单独功能的一部分。如果使用原始对话框集,这可能会让用户按要素名称选择它们,或者您可以隐藏它们。这些功能应该有有有意义的名称,如
    App1
    App2
    App3
  • 确保您的三个复选框与不同的属性相关联,例如
    INSTALL\u APP\u 1
    INSTALL\u APP\u 2
    INSTALL\u APP\u 3
    。出于习惯,我在这里显示公共属性,但是由于它们将以相同的顺序使用(甚至在同一个对话框中),所以可以使用私有属性。使用比1,2,3更有意义的后缀
  • 向您描述的对话框上的“下一步”或“安装”按钮添加多个。对于要以这种方式控制的每个功能:
    • 添加一个控制事件,该事件带有一个功能名称参数(例如App1),条件是在选中复选框时执行(即具有类似于
      INSTALL\u APP\u 1
    • 添加一个控制事件,其参数为功能名称(例如App1),条件是在未选中复选框时执行(例如,条件为
      不安装\u APP\u 1
  • 如果要在维护期间显示此对话框,还应初始化复选框属性的值(
    INSTALL_APP_1
    等),以便仅通过此对话框不会更改其安装状态。您可以使用(
    !App1
    等)要在SetProperty中执行此操作,请在显示维护对话框之前安排自定义操作(例如,将property
    INSTALL\u APP_1
    设置为值
    1
    ,条件为
    !App1=3

  • 如果这些功能显示在功能选择控件中,请确保相应地更新属性。在该对话框的“下一步”按钮上,使用功能状态和功能操作语法组合执行此操作。如果功能当前已安装但未删除,或正在安装,则属性应为
    1
    否则应设置为空(
    {}

  • 这是许多步骤,但它们一起有助于确保功能将按用户期望的方式运行。如果用户不更改其状态,则它们应保持先前设置的状态。如果在功能选择控件和via复选框中都可见,则它们应同步运行

    就先决条件而言,如果你指的是InstallShield的先决条件概念,那么你可以为那些应用程序提供这些先决条件。如果你只是指MSI中的其他组件,那么这些组件也可以与步骤1中定义的功能完美配合