仅在用户计算机上尚未安装器时,如何启动在自定义操作中指定的可执行文件



我正在使用Visual Studio 2015设置项目模板构建可执行文件。

我在软件包的文件系统中添加了一个外部可执行文件,用户需要安装,以便能够运行我的程序。然后,我在Commit上添加了此软件包作为自定义操作。

我希望我的安装程序包通过查看计算机上的某个文件夹结构的注册表来识别该外部可执行文件是否已经安装在用户计算机上(尚未定义检查方法(。

如何为自定义操作设置这种检查?我已经看到在Custom Actions窗口中单击.EXE时有一个Condition属性,但是我所能找到的有关此属性的只是该属性,这并不能真正解决我的问题。

vs设置提供注册表搜索,该搜索将设置您定义的属性名称(在大写中(。如果注册表条目存在,这意味着您不需要运行程序,则为自定义操作提供一个未找到的Regrigtristry条件,假设找到的Registristry是该属性的名称。

说,如果该程序是可以安装某些内容的重新分配:

  1. 他们通常足够聪明,可以弄清楚他们是否需要做任何事情,其中包括查看已经安装的内容是否是较旧版本,因此无论如何它们都应该运行,因为它是一个较新的版本。因此,最好还是只运行它。

  2. 如果可执行文件包装基于MSI的设置,则它将失败,因为您无法在VS MSI设置中使用自定义操作安装基于MSI的设置。

最新更新