VS.net 安装包制作

1.添加项目输出

在文件系统编辑器中,如果项目在一个解决方案中,则可以添加项目的主输出,为自动识别添加生成的exe,config,dll引用等;项目经常还包括一些资源文件,如图片,xml等,这些设置为内容的话,则可以添加项目的内容文件;如果还有一些特殊文件添加,比如第3点说到msiexec.exe文件,则可以直接浏览添加。

 

2.如何使新生成的安装包在安装时自动覆盖以前安装过的版本

设置部署项目属性RemovePreviousVersion为True,并将Version升高,并在生成时提示的“建议在更改版本时更改ProductCode,要进行该操作吗?”选择是。

 

3.如何添加卸载

找到msiexec.exe文件,一般在windows/system32下,添加到文件系统中,可以改名为UnInstall.exe,然后设置其快捷方式,最好重命名快捷方式并放到程序目录中,并设置其Arguments属性值为/x {[ProductCode]},这里用[ProductCode]可以自动获取安装包的ProductCode,网上多数让你直接拷贝部署项目的ProductCode,但是第2点提到了ProductCode是会变的。(ProductCode变是为了覆盖安装,ProductCode不变是为了检测升级)

 

4.如何在安装整个过程中实现自定义操作 

首先需要新建一个类库项目,然后在其中添加安装程序类,根据需要添加相应的重写方法

 例如要在安装完成后启动程序,可以这样写

protected   override   void  OnAfterInstall(IDictionary savedState)
        {
            
string  appPath  =  Context.Parameters[ " targetdir " ];
            Process.Start(appPath 
+   "XXX .exe " );
            
base .OnAfterInstall(savedState);
        }

 Context.Parameters["targetdir"]为获取安装路径,需要在部署项目中设置

 其次,在部署项目的自定义操作中,把安装,提交,回滚,卸载都添加上面项目的主输出

设置主输出的属性CustomActionData值为/targetdir="[TARGETDIR]\",这样Context.Parameters["targetdir"]才能获取到安装路径。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值