C#基础教程(十)软件打包

(一)前言

软件打包很多年前用过,当初用的好像是微软Install Shield Limited Edition,时过境迁,再次想做个安装文件,甚至无从下手,总结出一个原因,就是当时csdn没写篇文章做个Flag。旧的已去,本次使用的是Microsoft Visual Studio 2013 Installer,这个插件安装方法可以直接去官网下或者VS联机装:工具/扩展与更新,进入扩展更新对话框,选择联机,搜索Install project,选择Microsoft Visual Studio Installer Projects下载并安装。

(二)打包

1.新建一个打包项目

新建一个项目,其他项目类型/Setup Project,然后命个名。

然后会出现文件结构,如下:

a."应用程序文件夹"表示要安装的应用程序需要添加的文件;

b."用户的‘程序"菜单"表示:应用程序安装完,用户的"开始菜单"中的显示的内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序.exe和卸载程序.exe;

c."用户桌面"表示:这个应用程序安装完,用户的桌面上的创建的.exe快捷方式。

2.添加程序文件

在应用程序文件夹,点击右键添加文件:添加要打包的文件(添加的文件一般是已经编译过应用程序的debug目录下的文件) 

如果debug下面有子文件则需要"添加文件夹",例如Image,然后将对应子文件里的内容添加到此文件夹中;

3.添加桌面快捷方式

程序文件中.exe文件右击,选择Create Shortcut to xxx.exe,创建好将它拖到(剪切/复制)到User's Desktop中。Icon记得改一下,否则有点low。

4.添加卸载快捷方式

在"应用程序文件夹"中添加文件:C:\Windows\System32\msiexec.exe。

在msiexec.exe上右键创建快捷方式,重命名为:UnInstall,把此快捷方式拖动到"User's Programs Menu"中,也可修改Icon;

注意点:点击项目,在属性中找到ProductCode

然后点击UnInstall快捷方式,在属性中找到Arguments,把code复制到这里来,前面加/x空格。

5.组件安装

右键安装项目/属性/选择系统必备

有三种组件打包方式,安装时联网下载,本人觉得不稳妥,如果没网那客户怎么安装!第二种,相同位置下载,绝不仅仅将包扔到文件夹下,会报错,看下一节我遇到问题如何解决的。组件可以选高位,高兼容低,但低无法兼容高,下行原则,但也不是无边界的兼容,具体看官网包说明。第三种从某个服务器下,没试过。建议第二种,不要疑虑环境包很大,打出的程序包也变大,都是压缩过的,本人实测差异不大,别轻信网络各家言词。

6.启动条件

在项目名称上,点击右键选择"视图",点击"启动条件":

这个一般来说,不需要选择,是原项目中的属性设置。不是这个环境,有的新特性也用不了,程序不能正常运行。

7.软件信息

项目名称,点击左键,在属性中设置参数如下:

其中Author 为作者;Manufacturer为公司名称;ProductName为应用程序的名字;

把InstallAllUsers 设置为True 。(这样在“控制面板”程序中会显示公司的名称;在安装时会默认为"任何人",否则默认为"只有我")

至此,一个程序打包完了,在项目文件中的debug下可以找到安装包,会出现一个setup.exe和xxx.msi,都是软件安装包,区别如下,并不重要,作为了解。

(三)遇到的问题

在使用打包下载环境包没啥问题,但是第二种当前位置就有报错了

大概意思就是没找到包,那么首先我们得去官网上下载这两个环境包,刚开始下的是4.5.2,由于本机的实际情况,没有4.5.2的文件包,只有4.5.1,所以又转回去下了4.5.1的runtime包和CHS

这两个包怎么放?放哪里?我也是网上搜了一大片,又是各家之言,下面这个对我有所帮助。

我就敏锐的感觉到,要在Program FIles(x86)中找到这个文件夹:Bootstrapper,果然被我找到了,然后就好办了,去找.net文件夹,在v8.1A中找到了,跟网上也对应的上,然后我就把语言包拷进zh-Hans,非语言包放在外面,发现减少一个错误,还有一个错误是找不到xxx环境包,我灵机一动,我现有环境包名NDP451-KB2859818-Web.exe跟报错提示包名对不上,改一下它是否就能识别了,最后我的判断是正确的,没错误成功打包。

 

 这样,可以成功生成安装包,但是出现个问题,安装在C盘会出现打不开软件现象,接下来我们继续解决问题。

1)在开发项目上点右键—>属性—>安全性—>选择启用ClickOnce安全设置—>保存

在这里插入图片描述

2)保存好后项目下面就会多出一些文件

在这里插入图片描述

点击app.manifest文件
将修改为

3)大概率你还会遇到下面的错误:ClickOnce 不支持请求执行级别“requireAdministrator”。

在这里插入图片描述

只需要在回到第一步安全性设置:关闭启用ClickOnce安全设置

在这里插入图片描述

  • 4
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值