.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,可以直接双击就能运行。

文章来源:搜索引擎大全http://www.iis7.com/b/ssyqdq/

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,826评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,968评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,234评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,562评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,611评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,482评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,271评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,166评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,608评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,814评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,926评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,644评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,249评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,866评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,991评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,063评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,871评论 2 354

推荐阅读更多精彩内容

  • 今天去找老师做颂钵体验,可能是我最近都在修练身体层面,所以身体比较敏感,颂钵靠近我的时候我能感受到颂钵的能量场,我...
    罗罗之精灵世界阅读 1,658评论 0 0
  • 不做一个出口就伤人的人 温和一点 有同理心一点 and学习力确实有点差,明天开始培养习惯
    5f3dccf0222d阅读 107评论 0 0
  • 有人高呼着现在已经没有爱情,承认爱情存在的人都是天真的小女孩。我不敢苟同。我只愿对相信的事物全力以赴,以...
    童初2017阅读 1,058评论 4 18
  • 但凡称之为艺术的,都是一种美,都代表着我们对生活中爱。热爱生活的人,才能欣赏艺术,品味艺术,创造艺术。 ...
    廖迎春阅读 111评论 0 2