安装包打包:如何捕获msi升级事件?(System.Configuration.Install) 导入System.Configuration.Install类,用于打包时,重写Install方法。在安装的时候,也确实调用了自定义方法。但是当msi版本升级的时候,比如1.0.0升级到1.0.1,并不能捕获Install等任何事件。只有当安装或者卸载的时候,才能捕获Install或者Uninstall等事件。当msi版本升级时,有什么事件能捕获呢,也就说,怎么才能加入自定义操作。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CSDN如此萧条了么,怎么没人顶啊 MSI包升级主要包含以下几个方面:1:版本号升级,比如从1.0.0修改为1.0.12:ProductCode更新3:UpgradeCode不变修改了上述几个方面打包而成的MSI安装包,在旧版本机器上安装时,称之为升级,而不是先卸载后安装。 2和3应该反了吧,我觉得应该是ProductCode不变,UpgradeCode更新。ProductCode如果变化了,就变成另外一个新的安装包了 没有弄反,可参考http://msdn.microsoft.com/zh-cn/library/465253cd.aspx我是只对一个应用程序进行更新。 楼主究竟是说Install方法,还是说AfterInstall、BeforeInstall这些事件试了一下。Install方法仍然正常地被调用了,没问题至于AfterInstall、BeforeInstall这些事件,没试过,但只是为了加入自定义操作,一般也不需要使用 我试了System.Configuration.Install下所有的事件,如Install,AfterInstall、BeforeInstall等等都不行。如果是先卸载再安装,上面的事件都会触发。但是在原版本不卸载的前提下安装新版本,任何事件都不会触发。奇怪了。 是的,以前我解决过这个问题,在assmble.cs文件里面改版本号为*.*.*.*貌似是这样,每次编译后它就会自动增长,然后在安装时就会提示是否版本更新,就不需要删掉后再装了. C#如何把一个单引号输入到数据库中 请大虾帮帮忙!!flash按钮怎么连接*.aspx文件? treeview 如何显示出哪个节点当前是选中状态呢? 【Help】如何将select * From Table 表返回信息导入ComboBox里面?【求助】 怎么判断窗体已存在? C# 在另一个类中去添加listbox的内容 c# 怎么设置延迟效果? FileSystemWatcher 求助,计算时间差问题,总是重复数据! 怎样打开带有菜单和工具条的弹出式窗体(C#,WEB窗体) 请教:在richtextbox里信息一行一行显示? DigitalPen.dll 应该怎么用的?
1:版本号升级,比如从1.0.0修改为1.0.1
2:ProductCode更新
3:UpgradeCode不变修改了上述几个方面打包而成的MSI安装包,在旧版本机器上安装时,称之为升级,而不是先卸载后安装。
2和3应该反了吧,我觉得应该是ProductCode不变,UpgradeCode更新。
ProductCode如果变化了,就变成另外一个新的安装包了
没有弄反,可参考http://msdn.microsoft.com/zh-cn/library/465253cd.aspx
我是只对一个应用程序进行更新。
试了一下。Install方法仍然正常地被调用了,没问题
至于AfterInstall、BeforeInstall这些事件,没试过,但只是为了加入自定义操作,一般也不需要使用