是否可以在InstallShield安装中具有特定于发行版的支持文件?

时间:2019-03-19 20:39:09

标签: installshield

我们的合作伙伴/经销商之一是设备制造商,他具有我们应用程序的特定安装程序,该安装程序还为其硬件安装实用程序和驱动程序。到目前为止,如果用户输入了特定于我们合作伙伴版本的应用程序的序列号,则我们已将驱动程序/实用程序放入InstallShield的“支持文件”部分,并通过installscript静默启动了实用程序安装程序。该合作伙伴最近来找我们担心他们的许可协议,特别是不允许我们将其实用程序分发给不是其客户的用户,并且仅将其安装程序包含在我们的安装程序中(即使我们不运行它)也构成了分发。 有什么方法可以确保合作伙伴实用程序的支持文件仅包含在其发布的应用程序中?

3 个答案:

答案 0 :(得分:1)

  

驱动程序安装 :据记录,驱动程序安装显然在改变。 See this answer。本质上来说,驱动程序是   通过 Windows Update 分发,或至少通过 standalone package 分发   无需安装程序。

     
      
  • Windows Hardware Dev Center dashboard现在可用于“硬件任务”:      
        
    • Hardware certification
    •   
    • Collaborative driver development
    •   
    • Driver distribution through Windows Update
    •   
  •   
     

我想我只是提一提。老实说,我对此一无所知。


OEM? :关于您的实际问题,我不确定我是否正确理解要求。您只需要为这些人设置特殊设置?有点像您自己设置的OEM版本?

支持文件 :我不知道具有特定于版本的支持文件的内置方法。也许您可以使用COM自动化功能自动为每个构建使用正确的配置更新ISM的过程,但是我不会采用这种笨拙的方法。似乎有一些对象: ISWiSetupFile ISWiSetupFiles 。我从来没有尝试过。 Here is a COM Automation Sample从后退。

Suite项目 :我可能只是将他们的安装程序与您自己的安装程序捆绑在一起,然后将其全部包装在Installshield Suite project中。这些本质上是引导程序项目,它们启动MSI,MSP,EXE和其他可执行文件以按顺序运行。我不确定哪些版本的Installshield具有这些项目。这意味着他们自己的设置会在您设置之前或之后运行-不是在您自己的设置中运行,而是按套件的 setup.exe 调用的顺序运行-您可以在不使用设置的情况下交付自己的设置其中的第三方驱动程序和工具。这只是Installshield套件项目的另一种形式的编译。

安装程序风味 :您可以使用Installshield的 Release Flag (发布标志)功能,相对容易地从同一源项目中编译不同的安装风味。这与上述Suite项目不同,因为这是一个以不同形式提供的MSI,而不是依次运行多个MSI文件。它允许您使用标记标记设置的一部分,以将其包含在正在构建的设置中或从中排除。例如,某些功能可以用PRO标记为专业版。 Please search the help file for information on release flags


链接

答案 1 :(得分:1)

我认为,仔细控制源文件的路径变量可以解决问题。您可能无法删除其文件的所有痕迹,但是通过overriding where the path variable points at the release level,您可以至少对所有其他构建配置使用另一组空文件(具有相同的名称)。这样的空文件意味着您不会分发它们的代码。因此,除非文件名本身是一个问题,否则请尝试一下。

(您没有提到您正在运行什么版本的InstallShield,但我最早在网上找到了InstallShield 2014的等效文档。我认为它的存在时间更长。)

答案 2 :(得分:1)

如果我的内存可用,则不能使用标志来控制ISSetupFile表。但是您可以做的是:

1)使用自动化界面在构建时将这些文件注入ISM。

2)创建在ISSetupFile表中具有资源的合并模块,并将合并模块关联到不同的功能。在功能级别使用释放标志来控制要合并的合并模块,从而控制ISSetupFile表的内容。