这篇文章将为大家详细讲解有关如何进行.NET桌面程序WINFORM或WPF的部署,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
目前的WIN7操作系统自带了.NET3.5,用户基数比较大,后面的WIN8,WIN10的自带.NET版本都不一样。WINDOWS SERVER操作系统默认的.NET是不启用的,需要手动启用.NET组件。由于桌面程序很少有在服务器系统上运行的,所以不考虑SERVER系统。
在开发前端桌面程序时,以前的前端程序很多会用MFC开发,或者基于MFC的界面库进行开发,好处是不需要关心操作系统,可以直接运行。也有通过DUILIB、SOUI等基于DirectUI的界面库进行开发,这种比MFC更灵活,界面可以做的更炫,其它的比如用QT或者WTL等的也比较普遍。
相对来说,开发最简单的方法是用C#基于WPF或者WINFORM来开发,撸代码比较快。但是这种开发有个问题,就是.NET的兼容性问题。如果安装包要附带一个.NET,这会导致部署很麻烦甚至有时候会失败。
因为现在XP操作系统很少有用的了,如果有的话,那只能是让它装上.NET4.0了(XP最多支持到.NET4.0,为什么不是让用户安装.NET3.5,因为3.5的安装包太大)。
说了这么多,开始实际说下部署办法。由于WINDOWS VISTA版本没实际测过,这个你们自己考虑测试吧。
一、首先考虑你的程序要不要在XP上跑,如果需要的话,安装包在安装过程中去检测下用户是否安装了.NET,如果没装,则提示用户安装.NET,或者直接安装包附带一个.NET4.0的安装包自动运行。
二、如果不想兼容.NET,只想在WIN7或以上版本运行,那么基于.NET3.5来开发WINFORM或WPF。在.NET3.5开发的程序,有时候界面效果和基于.NET4.0等版本效果有一定差别,需要测试。
三、在App.config文件里添加上如下代码
注意,startup节点要放在configuration内部的最前面。
这段配置的意思是比如你操作系统有.NET3.5和.NET4.0同时存在,则先用.NET3.5来启动程序,如果没有,则再用.NET4.0来启动程序。当然如果没.NET4.0有.NET4.5那就会以.NET4.5来启动程序。
如果你不加上面的代码,那么你基于.NET3.5开发程序,到了WIN10上会直接无法运行。
注意:这个配置文件最后要和EXE程序一起发布的,比如你的EXE名字叫HAHA.EXE,那么Config就比如HAHA.EXE.CONFIG名字。这个HAHA.EXE.CONFIG里就必须带上上面的配置,默认情况下,VS会自动输出该配置,不需要手动操作。
有个别用户的.NET3.5安装问题,会导致程序无法正常运行,这时候可以注意掉这一行,给用户安装上.NET4.0试下。
四、确保你的程序针对.NET3.5,.NET4.0,.NET4.5都能运行正常,最终可以在纯净的WIN7,WIN8,WIN10分别测试下程序,不需要额外安装.NET了。
五、因为.NET的特殊性,生成的程序最好加密处理下,不然容易被人破解,比如可以考虑开源.net混淆器ConfuserEx。
上述操作完成后,假如只是针对WIN7及以上的操作系统进行桌面程序部署,那么我们不用附带.NET,也不用用户去安装.NET,可以直接双击就能运行。
关于如何进行.NET桌面程序WINFORM或WPF的部署就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。