1.我想在用户安装好我制作的安装包之后,自动运行安装另外一个本来就已经存在的安装程序(exe安装包)。我尝试在自定义操作编辑器的commit一栏中直接添加该exe安装包,但是失败了(因为这个时间点第一个安装包还没彻底运行完,会报错说有一个安装程序在进程中)。请教怎么实现该问题。
2.我想确认下自定义操作是不是只能在install,commit,uninstall和rollback这四个地方添加?能不能在安装程序运行时更早的阶段中添加。
20 个解决方案
#1
用第三方安装工具,如installshield等
#2
规定只能用vs自带的安装与部署功能,因为好像做64位的安装包installshield要付费的。
#3
自己顶,没人知道吗
#4
再顶。
#5
一个安装程序在进程中 这种错误好像VS的Setup工程解决不了。
#6
非常感谢你的回答,如果不能解决,那请问怎么样可以实现我想要的功能呢。
#7
因为 recursive MSI installs are not allowed. 因此,选择不多。
1. 你不使用vs 的setup工程
2. 第三方是否提供非MSI方式的安装包(也就是不需要Windows Installer进行安装)
#8
非常谢谢你的回答,首先我领导规定这个要用vs 的setup工程来做。
我说的另外一个现成的安装包是用installshield制作的,这样也不能递归调用是吗?还有就是recursive MSI installs are not allowed.这句话是msdn里的吗,如果是的话麻烦吧网址发给我看下好吗,或者msdn里有类似的话也可以(我没有找到),这样我可以和领导说没办法实现这个功能。真的感谢。
我说的另外一个现成的安装包是用installshield制作的,这样也不能递归调用是吗?还有就是recursive MSI installs are not allowed.这句话是msdn里的吗,如果是的话麻烦吧网址发给我看下好吗,或者msdn里有类似的话也可以(我没有找到),这样我可以和领导说没办法实现这个功能。真的感谢。
#9
再顶。
#10
顶顶顶
#11
你可以再写一个简单的控制台小程序,用Process.Start先调用你的安装程序,在调用第三方的安装包
#12
#13
Msdn上的描述:
Do not ship concurrent installations.
http://msdn.microsoft.com/en-ca/library/bb204770.aspx#concurrent_installs
Do not ship concurrent installations.
http://msdn.microsoft.com/en-ca/library/bb204770.aspx#concurrent_installs
#14
倒是发现了一种方法可以执行nested MSI,但是需要自己手动改安装包中的Table,估计比较麻烦。
参考:
How to create a nested .msi package
http://support.microsoft.com/kb/306439
参考:
How to create a nested .msi package
http://support.microsoft.com/kb/306439
#15
http://wenwen.soso.com/z/q229401641.htm
根据你的描述你可以这样!
根据你的描述你可以这样!
#16
我也遇到这个问题了
#17
我也想在安装完成之后去执行一些命令和程序。。。
#18
这个问题最后怎么解决的..
#19
可以考虑采用 Inno Setup ,这个是开源的打包工具,采用pascal 语言定制你的安装程序,楼主的这个需求完全可以实现,只是需要花点时间学习一下 pascal 编程。
我的一个博客:http://blog.csdn.net/lanmangfeige/article/details/38928031
我的一个博客:http://blog.csdn.net/lanmangfeige/article/details/38928031
#20
Inno Setup 好一点 控制比较方便
#21
#1
用第三方安装工具,如installshield等
#2
规定只能用vs自带的安装与部署功能,因为好像做64位的安装包installshield要付费的。
#3
自己顶,没人知道吗
#4
再顶。
#5
一个安装程序在进程中 这种错误好像VS的Setup工程解决不了。
#6
非常感谢你的回答,如果不能解决,那请问怎么样可以实现我想要的功能呢。
#7
因为 recursive MSI installs are not allowed. 因此,选择不多。
1. 你不使用vs 的setup工程
2. 第三方是否提供非MSI方式的安装包(也就是不需要Windows Installer进行安装)
#8
非常谢谢你的回答,首先我领导规定这个要用vs 的setup工程来做。
我说的另外一个现成的安装包是用installshield制作的,这样也不能递归调用是吗?还有就是recursive MSI installs are not allowed.这句话是msdn里的吗,如果是的话麻烦吧网址发给我看下好吗,或者msdn里有类似的话也可以(我没有找到),这样我可以和领导说没办法实现这个功能。真的感谢。
我说的另外一个现成的安装包是用installshield制作的,这样也不能递归调用是吗?还有就是recursive MSI installs are not allowed.这句话是msdn里的吗,如果是的话麻烦吧网址发给我看下好吗,或者msdn里有类似的话也可以(我没有找到),这样我可以和领导说没办法实现这个功能。真的感谢。
#9
再顶。
#10
顶顶顶
#11
你可以再写一个简单的控制台小程序,用Process.Start先调用你的安装程序,在调用第三方的安装包
#12
msdn社区里的回答:
http://social.msdn.microsoft.com/Forums/en/winformssetup/thread/fbf40cb2-57e6-4a5e-864b-e190ecffa342
#13
Msdn上的描述:
Do not ship concurrent installations.
http://msdn.microsoft.com/en-ca/library/bb204770.aspx#concurrent_installs
Do not ship concurrent installations.
http://msdn.microsoft.com/en-ca/library/bb204770.aspx#concurrent_installs
#14
倒是发现了一种方法可以执行nested MSI,但是需要自己手动改安装包中的Table,估计比较麻烦。
参考:
How to create a nested .msi package
http://support.microsoft.com/kb/306439
参考:
How to create a nested .msi package
http://support.microsoft.com/kb/306439
#15
http://wenwen.soso.com/z/q229401641.htm
根据你的描述你可以这样!
根据你的描述你可以这样!
#16
我也遇到这个问题了
#17
我也想在安装完成之后去执行一些命令和程序。。。
#18
这个问题最后怎么解决的..
#19
可以考虑采用 Inno Setup ,这个是开源的打包工具,采用pascal 语言定制你的安装程序,楼主的这个需求完全可以实现,只是需要花点时间学习一下 pascal 编程。
我的一个博客:http://blog.csdn.net/lanmangfeige/article/details/38928031
我的一个博客:http://blog.csdn.net/lanmangfeige/article/details/38928031
#20
Inno Setup 好一点 控制比较方便