C# Winform项目打包问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# Winform项目打包问题相关的知识,希望对你有一定的参考价值。
我做了个小项目。然后打包后在比的机子上远行不了
报错:找不到指定的文件
我在打包时添加了文件,这些文件添加进来怎么是绝对路径,比如:我添加E盘下面的一个文件。然后打包后,安装运行会报错找不到这个文件
这怎么办,打包时一添加进来就是这路径好像不能改呀
机子上装了 。net3.5呀
打包时我添加debug 下面的文件
听他们讲是不是 生成时 要生成发布版Release 然后添加Release下面的文件
可是我用Release 生成项目。报错,第三方皮肤控件就报 找不到程序集
右击属性 把什么属性改为RESOURCE
参考技术B 那个可能是他的机子没有装.net framework之类的东东 ,你添加生成以后就不会有问题的,除非就是你的数据库连接配置没有修改吧 参考技术C 找到bin里面有个debug文件夹
里面也别找了,把里面的所有文件别管有用没用的都给添加了
(除非你能分清哪个文件是必须的,里面的基本上都能用到)
就可以生成安装了 参考技术D 用什么打包的 intallshield ?追问
系统自带的呀
追答在你要运行的电脑上 也要安装第三方皮肤
追问可问题是,现在打包时添加进来的文件。打包后 安装运行找不到这文件
这路径有问题
如果说打包时添加E盘a文件
安装后运行如果E盘下没a这文件就会报错
自己制作了一个winform应用程序,想和.netframework的安装程序打包成一个安装文件,请注意:是一个文件
不是一个安装文件+若干组件、补丁等
C#程序打包与部署一).创建部署项目
1. 在“文件”菜单上指向“添加项目”,然后选择“新建项目”。
2. 在“添加新项目”对话框中,选择“其它项目类型”窗格中的““安装项目”。在“名称”框中键入 setup。
3. 单击“确定”关闭对话框。
4. 项目被添加到解决方案资源管理器中,并且文件系统编辑器打开。 里面包括3个文件夹:应用程序文件;用户的“程序”文件,用户桌面。右键点击应用程序文件,选择添加->文件。找到你所建项目生成的bin->debug.里面文件,全选,点击打开。
5、找到你的项目文件名.exe文件,右键创建快捷方式,将生成的快捷方式放到用户桌面文件夹
6、此时右键点击所建的安装项目,选择生成。便开始对安装文件进行打包。完成以后再这个项目的debug文件夹中,就可以得到setup安装包。打包成功!
7、如果还想做一个卸载文件,需要执行以下步骤。还是在用户程序文件里面添加文件,浏览c->windows-system32->msiexec.exe。添加该文件。
8、查看安装项目属性productcode 类似“F2B5B56B-6A26-4A95-A756-89EBF6F2CE64”。复制下来。打开刚添加的msiexec.exe的属性,在condition里面写:/x复制的productscode.
9、对msiexec.exe再建一个快捷方式,改个名字,放到:用户的“程序”文件 的文件夹中。再打包。用户安装完以后,在开始菜单-》程序-》项目名字就可以看到卸载文件了。
七).打包时加入卸载功能:
方法一:
1.在打包项目中添加文件msiexec.exe(一般可在c:\windows\system32\下找到)
2.在文件系统视图中选择应用程序文件夹,在msiexec.exe上按右键,选择创建快捷方式,重命名快捷方式为"卸载".
3.更改此快捷方式的Arguments 为"/x 产品id",产品id的值为打包项目的ProductCode属性值.
方法二:(推荐)
1.先生成安装包,记下ProductCode(选择解决方案资源管理器根目录如setup1,再查看属性标签,不是右键中的属性),下面要用到
2.用VS.net建立一个新的控制台程序uninst.exe文件
if(System.Environment.OSVersion.ToString().IndexOf("NT 5")>0)
Process.Start("msiexec", "/X492472A2-C9BA-46A3-9DB4-2FA098AD1D07");//改为自己的ProductCode
3.将控制台程序BIN目录的exe文件加入到打包程序文件中,在程序组创建uninst.exe的快捷方式 参考技术A 在VS中新建部署项目,项目中添加winform的项目输出,依赖选择合适的.netframework版本,在项目上右键属性,包文件,选择 在安装文件中,生成,即可。追问
说了半天你还是不看,真不知道你是复制的还是真没看懂
追答你是说按这样的方式做成的安装包不是一个文件是吧,你可以把这样生成的安装包,用RAR压缩成自解压文件,然后选择解压到临时文件夹,自动执行setup.exe,就成一个文件了。
本回答被提问者采纳 参考技术B 可以打包成一个安装文件,但是不能和.net framework一起打包成一个安装文件。网上有一些高手以某些非常规方法能在某种程度上实现。但限制较多,并不太实用。 参考技术C 这个问题我也纠结了几天,最后还是觉得用专业的打包工具比较好。vs上的打包都是安装文件+若干组件、补丁。专业的打包工具就不会了。你上网找找,很多的 参考技术D 我也想过这个问题怎么搞。。可是想想就算你打包成一个文件了。那又如何。?还不是要安装。? 还不如想想怎么重根本解决问题呢。追问咱俩要求不一样。打包成一个要安装的,就已经能满足我的需求了。现在就是不能变成一个
追答袄。。 那这个我帮不了你了。。不好意思。。 如果是想要一键安装的话还是可以实现的。但是搞到一起就不太懂了。。不好意思。
以上是关于C# Winform项目打包问题的主要内容,如果未能解决你的问题,请参考以下文章
把自己做的C# winform应用程序打包为.exe安装程序怎么做?
在win7系统下开发的C# winform项目 打包后 在windows2003系统下无法打开,总是爆出如图所示