Visual Studio Installer文件系统(File system)安装条件(Condition)出错以及解决办法
2013-01-24 11:17
531 查看
笔者最近在Visual Studio 2010中使用Visual Studio Installer创建安装项目时碰到了一个非常奇怪的问题。
笔者想做一个installer,需要往一个已经安装过的软件目录下复制文件,但是该安装的软件不同的版本的路径地址不一样,所以需要设置文件安装条件。
笔者参考http://msdn.microsoft.com/zh-cn/library/vstudio/e7e70ac3(v=vs.100).aspx ,
首先在Lauch Condition中添加了注册表搜索条件,将第一个注册表搜索条件命名为SEARCHFOR2013PATH
然后,在File System 添加一个自定义文件夹,将需要安装的文件拖到此文件夹中,假设其中的一个文件时1.txt,需要将1.txt安装到2013PATH下的bin文件夹下
一开始的时候,笔者在DefaultLocation中设为[SEARCHFOR2013PATH]\bin,并直接将1.txt放置于FileSystem的2013Bin下面,后来发现,不管注册表中有没有检索到2013的path,1.txt都会去安装,如果注册表搜索结果为空,那么在安装的时候就会报“Cannot access network location bin”的错误,这个问题困扰了笔者1天,不管试什么样的条件,True 或者 False,都不行。
后来终于找到一个解决办法,参考了http://stackoverflow.com/questions/3135239/how-do-i-specify-visual-studio-installer-conditions
这个是VS的小trick,我觉得也算是一个bug了,需要在安装文件的目录下面建立一个子文件夹,将子文件的安装条件设置成SEARCHFOR2013PATH,同时,在File System下面的文件夹节点的DefaultLocation可以设置为子文件夹的上级目录,然后,还需要对这个文件夹(bin)下的每个文件设置condition为SEARCHFOR2013PATH,这样就可以执行条件安装了。如上图所示。
真想吐槽一下微软。。
笔者想做一个installer,需要往一个已经安装过的软件目录下复制文件,但是该安装的软件不同的版本的路径地址不一样,所以需要设置文件安装条件。
笔者参考http://msdn.microsoft.com/zh-cn/library/vstudio/e7e70ac3(v=vs.100).aspx ,
首先在Lauch Condition中添加了注册表搜索条件,将第一个注册表搜索条件命名为SEARCHFOR2013PATH
然后,在File System 添加一个自定义文件夹,将需要安装的文件拖到此文件夹中,假设其中的一个文件时1.txt,需要将1.txt安装到2013PATH下的bin文件夹下
一开始的时候,笔者在DefaultLocation中设为[SEARCHFOR2013PATH]\bin,并直接将1.txt放置于FileSystem的2013Bin下面,后来发现,不管注册表中有没有检索到2013的path,1.txt都会去安装,如果注册表搜索结果为空,那么在安装的时候就会报“Cannot access network location bin”的错误,这个问题困扰了笔者1天,不管试什么样的条件,True 或者 False,都不行。
后来终于找到一个解决办法,参考了http://stackoverflow.com/questions/3135239/how-do-i-specify-visual-studio-installer-conditions
这个是VS的小trick,我觉得也算是一个bug了,需要在安装文件的目录下面建立一个子文件夹,将子文件的安装条件设置成SEARCHFOR2013PATH,同时,在File System下面的文件夹节点的DefaultLocation可以设置为子文件夹的上级目录,然后,还需要对这个文件夹(bin)下的每个文件设置condition为SEARCHFOR2013PATH,这样就可以执行条件安装了。如上图所示。
真想吐槽一下微软。。
相关文章推荐
- Visual Studio build tools 安装出错的一种解决办法
- win 2012 安装mysql 5.7.20 及报错 This application requires Visual Studio 2013 Redistributable. Please install the Redistributable then run this installer again 的解决办法
- 安装完Visual Team System 2008 Team Explorer出错解决办法
- Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案
- Microsoft Visual Studio下编译缺少头文件unistd.h解决办法
- Microsoft Visual Studio--- 未能加载文件 %CommonDir%\dte90a.olb。未能找到该文件,因此解决此问题的尝试,请重新安装此程序。
- windows系统安装软件弹出"Windows installer service could not be accessed.."解决办法
- Visual Studio 2013 无法启动 IIS Express 的解决办法,新建web项目时出错,系统找不到指定文件
- 安装 Microsoft Silverlight 4 Tools for Visual Studio 2010 时报错 的解决办法.
- win10系统 安装modelsim64位的无法生成license文件的解决办法
- 安装VMware-tools出错无法共享文件的解决办法
- VisualStudio.NET提示试图运行项目时出错:无法启动调试。绑定句柄无效解决办法
- 打开sln文件出现the selected file is not a valid visual studio solution file错误提示解决办法
- 在安装SQL Server的时候提示 Microsoft visual studio 2008 早期之前的版本 报错 解决办法
- 关于Visual Studio .NET 2003 安装时“系统组件不匹配”问题的解决
- sql management studio 附加mdf文件出错的解决办法
- 双系统XP和Ubuntu: 重新安装XP后GRUB出错进不了Ubuntu的解决办法
- 【python】mac系统下的Python安装,以及误删系统Python的解决办法
- Microsoft Visual Studio下编译缺少头文件unistd.h解决办法
- 免安装版--- mysql 启动报错--发现系统错误2,系统找不到指定的文件。解决办法