Visual Studio安装程序项目和网络驱动器

时间:2015-08-11 20:16:06

标签: visual-studio-2010 visual-studio windows-installer

我在Visual Studios 2010中创建了一个安装程序,并添加了一些自定义操作。它应该是一个工作站安装程序,因此它会检查目标文件夹中是否存在某些文件并在之后移动快捷方式。但是,如果我使用UNC路径或映射的网络驱动器路径作为目标文件夹并使用命令My.Computer.FileSystem.FileExistsSystem.IO.File.Exists,则它们在网络驱动器上返回false。如果文件存在,是否有办法在自定义操作中找出答案。目前我正在使用Windows XP来运行安装程序,因此UAC不是这里的一个因素。

1 个答案:

答案 0 :(得分:0)

VS安装项目中的自定义操作使用系统帐户运行,该帐户没有网络权限,因此无法查看它们。此外,映射的驱动器是用户配置文件,而不是系统范围的,因此它们属于特定用户,因此系统帐户也不会看到它们。

所以没有一个好方法可以做到这一点。如果自定义操作与安装用户的帐户一起运行,它可能会起作用,但随后它不会被提升,您需要进入MSI文件中的CustomAction表并关闭msidbCustomActionTypeNoImpersonate位。

https://msdn.microsoft.com/en-us/library/aa368069(v=vs.85).aspx