Visual Studio安装项目 - 检查目录是否存在

时间:2014-02-07 17:32:53

标签: visual-studio setup-project

我正在尝试使用VS2010中的Visual Studio安装项目安装库DLL。安装程序必须将DLL安装到Target Application文件夹中,并将DLL安装到安装的每个MS SQL Server Reporting Services实例的相应文件夹中。

即。如果安装了SQL 2008报告服务,则应另外将DLL安装到[ProgramFiles64Folder] \ Microsoft SQL Server \ MSRS10.MSSQLSERVER ... \ bin。

如果还安装了SQL 2012 Reporting Services,则还应将DLL安装到[ProgramFiles64Folder] \ Microsoft SQL Server \ MSRS10.MSSQLSERVER ... \ bin等。

如果系统上安装了相应版本的SQL Server,我只想将DLL安装到相应的文件夹中。

我尝试使用注册表搜索来查找MSRS * .MSSQLSERVER密钥,但这些密钥没有添加到Wow6432Node,我找不到让安装程序只查看64的方法-bit节点(为Any CPU和x64构建 - 最终都在Wow6432Node中查找)。

我也尝试使用文件搜索,但在查找目录而不是文件时,无法使其工作。

有没有简单的方法来做这个决定?如果所述目标文件夹已存在,只能将文件安装到目标文件夹?

1 个答案:

答案 0 :(得分:0)

生成MSI文件的安装项目(Windows Installer)不执行目录搜索,只执行文件,注册表和安装程序组件guid搜索。如果您知道这些设置中的代表性文件的安装程序组件,则可以搜索具有Windows Installer搜索的那些文件,并设置一个属性集,告诉您它们是否已安装。