首页 新闻 会员 周边

C# 高手们都是怎么实现自动更新WinForm程序的?

0
悬赏园豆:5 [已解决问题] 解决于 2012-10-30 13:41

就是当winForm程序发现有新版本的时候自动更新...

 

我想知道高手们一般是怎么做的?

 

我现在的思路是,在总服务器上建立一个共享的只读文件夹,把要更新的文件放里边,当客户端的winform启动起来的时候,去获取一下那个文件夹下的所有文件,判断一下它的最后修改日期,当修改日期大于当前程序中同名文件的修改日期时,把这个文件名加到一个列表中,然后打开另一个程序A,A程序关闭winform,并File.Copy列表中的文件覆盖掉winForm目录下的文件,完成之后,再打开新的winform,并把自己关闭,但这样做有一个不好的地方就是服务器上要弄一个共享目录,这样是不是不安全?

 

第二个思路是用socket,服务器上要放一个程序监听更新程序的请求,服务器上要打开一个端口,客户端把当前文件中的修改日期发给服务器,服务器判断指定更新目录下的文件的最后修改时间,如果较新,则把它序列化成byte[]发到更新程序并将它覆盖掉原有的winform程序,完成之后,由更新程序打开新的winform,并将自己关闭,这样服务器要开一个端口,是不是不安全?

 

还有第三种方法吗?大家一般都怎么做的?告诉我一下思路,谢谢!

hexllo的主页 hexllo | 菜鸟二级 | 园豆:318
提问于:2012-10-20 12:31
< >
分享
最佳答案
1

发布到网站。。。对比网站上和本地的版本文件中的版本信息 如Version:V1.1.2 对比 Version:V1.1.3...

收获园豆:5
子夜一梦 | 菜鸟二级 |园豆:213 | 2012-10-24 14:32
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册