2009-10-08 103 views
6

我正在使用Visual Studio中的安装项目,并希望用户能够使用复选框指定是否创建桌面快捷方式和/或开始菜单快捷方式。Visual Studio:有条件地在安装项目中创建快捷方式?

我能够让安装程序在适当的位置创建工作快捷方式,并添加了一个包含复选框的安装程序对话框;但是,我无法创建(或缺少)与这些复选框状态相关的快捷方式。

我假设我需要设置“条件”属性,但我不确定具体的语法。这是可能的,如果是这样,我将如何去完成这个?

回答

3

这是不可能的。

请看这里Microsoft Forum获得微软今年4月份的回复,覆盖了与您相同的问题。

+0

嗯,这是最不幸的;但这是一个非常明确的答案。谢谢。 – Donut 2009-10-08 15:05:03

6

链接的反馈产品,说:

在您需要的复选框仅控制该快捷方式是否安装的情况下,而不是它的目标,有在Visual Studio安装项目目前无解,这最好通过额外的MSI知识和后期构建脚本完成,以便在每次构建后手动修改MSI,或者通过迁移到更高级(且灵活)的安装开发工具(例如Windows Installer XML)。

你不能在VS的指向和点击界面内做到这一点,但 它实际上并不难做到你想要的一个简单的自定义操作。

alt text

定义脚本,用VBScript或JavaScript。您可以将自定义操作设置为基于任何条件运行,包括对话框中的复选框。

alt text

在脚本中,你分析输入,并创建快捷方式。我使用惯例将args与脚本分开字符,所以这是我如何解析:

var parameters = Session.Property("CustomActionData").split("|"); 
var targetDir = parameters[0]; 
var checkBoxState = parameters[1]; 
相关问题