如何根据操作系统通过安装项目安装文件?

时间:2011-08-31 03:22:58

标签: visual-studio setup-project

可能的操作系统是Win7和WinXP,每个都有自己的目录路径。 Win7安装在C:\ foo和WinXP安装在D:\ foo中。这可以使用Setup Project吗?

我目前正在使用VS2005。

提前致谢。

1 个答案:

答案 0 :(得分:0)

首先,如果Windows安装在C:for Windows 7和D:for XP上,您只需将应用程序文件夹默认路径设置为:

[WindowsVolume]foo

WindowsVolume属性会自动解析为Windows分区。

要更改默认的应用程序文件夹路径,您可以在文件系统文件夹中选择它,并在其属性窗格中设置 DefaultLocation 字段。

文件系统编辑器中的应用程序文件夹与TARGETDIR属性相关联。因此,如果您真的想要动态更改它,可以设置此属性。这可以通过type 51 custom action(带有格式化文本的属性集)来完成。

不幸的是,Visual Studio不支持这种类型的操作。因此,您可以使用Orca编辑MSI以添加它,或使用其他设置创作工具。

类型51操作只能在CostInitialize操作之前设置文件夹属性。由于您要设置默认安装文件夹,因此应在InstallUISequence表中安排您的操作。这样,更改将在您的安装UI中显示。

配置自定义操作后,您可以使用VersionNT属性对其进行调整。例如,可以为Windows 7设置默认安装路径:

[WindowsVolume]foo

在这种情况下,您的自定义操作可以将TARGETDIR设置为Windows XP路径:

D:\foo

并且有这个条件:

VersionNT = "501"