1

我已经创建了一个winforms应用程序以及该应用程序的设置和部署项目(VS 2010)。用户选择安装文件夹后运行条件检查

所有我需要的是这样的:

当用户运行MSI,他选择我要检查应用程序的主执行该文件夹中已经存在的安装文件夹之后。在这种情况下,我想中断安装并提示用户卸载现有应用程序或选择其他文件夹。

我想,如果可能,不要使用任何自定义安装程序操作。起初,启动条件(使用文件搜索)似乎是正确的方式,但似乎启动条件(因为它们是'启动')在msi执行开始时运行,而不是在文件夹选取之后运行。

回答

2

Visual Studio安装和部署项目不支持这种类型的创作。这是Microsoft从Visual Studio 2012中删除该项目类型的许多原因之一。

使用此工具的唯一方法是构建MSI,然后使用ORCA创建一个创建验证自定义操作的转换,然后作为选通控制事件将其安排到UI中。然后,您可以编写一个postbuild脚本,在每次构建MSI时将转换应用到MSI。

非常先进的东西,并坦率地不值得的努力。切换到支持此功能的工具(如Windows安装程序XML(FOSS)或InstallShield 2012 Professional)会更有好处。 ($$)

+0

谢谢,这很有帮助。 因为我想要快速肮脏的东西,我最终最终使用.NET安装程序类作为自定义操作来检查特定文件夹。 此安装程序n部署项目也是有问题的。它不断丢失所有的项目依赖关系,我不得不每次重新配置dll及其目标路径... –

+0

关于Advanced Installer,您有何看法? –

相关问题