比如说:我写了软件,发给了大家,但是我出了新版本就得在发给大家。我想用C# 写一个服务器和客户端的程序,当我有新版本的时候,大家通过客户端的程序就能自动更新版本~~求:类似的教材和源码,C/S源码~~

解决方案 »

  1.   

    同求 [email protected]万分感谢
      

  2.   

    维护更新列表,服务器上放置最新文件列表,其中标注每个文件的版本,可以用时间标识,客户端先下载,与本地比对,然后发现版本新的就更新我这有个delphi的,可以参考
    http://blog.csdn.net/bdmh/archive/2011/01/06/6120459.aspx
      

  3.   

    你可以做一个在线更新的功能,让客户端检查和下载更新,再安装。一般基于HTTP,如果做服务器用WCF也差不多。参考:http://www.cnblogs.com/xjwang/archive/2007/06/28/799147.html
      

  4.   

    我们项目就是这样做的。思路就是把要更新的内容在服务器做个发布,客户端启动时(或者人工点击更新按钮),检测客户端的版本号和发布版本是否相同,不同则下载文件,覆盖当前文件,重新启动。就和微软的智能客户端(SmartClient)的功能相同。
      

  5.   

    http://hi.baidu.com/171112319/blog/item/dd9510cec3858032b600c885.html
    可以参考一下
      

  6.   

    我自己用了一个笨办法,每个项目不是有版本号嘛,我通过加载程序的时候用版本号的递增判断客户的版本号与服务器上的最新程序的版本号是否一致,不一致就通过FTP下载更新。
      

  7.   

    软件启动去打开升级程序 
    升级程序 从某个固定地址获得最新版本信息  (一个配置文件就能搞定)
    对比 服务器配置文件与本地配置文件版本号是否一致 如果不一致
    则强制关闭软件 升级程序依照服务器配置文件和本地配置文件中的文件清单 
    依次下载到本地一个tmp文件夹里下载完毕后 根据配置的路径 覆盖
    删除tmp中的文件重启软件 这是最简单的方法 也可以在软件中还需要有一个 检测升级“升级程序”的模块 
    一边 软件 和升级软件都可以得到升级 
    但是升级程序写的成熟的话 其实不需要在升级了
      

  8.   

    方法1:主进程中启动下载的新进程
    方法2:主进程启动后,就由一个类库DLL接管,.Net是延迟加载类库的,在确认新类库下载完闭后,启动类库中的驱动代码.
      

  9.   

    有人用过 EMTASS 2.0这个框架吗?
      

  10.   

    一般都是通过web services/WCF查询服务器进行升级   
    配置XML文件保存版本信息,查询服务器获取版本如是最新版本就不要升级   
    还可使用smart client   
    文件覆盖进行软件升级
    http://topic.csdn.net/u/20090422/08/69f9713b-3982-4313-ab11-7fb6eefdcf93.html
      

  11.   

    自动在线升级定义你程序的版本号,然后发布到服务器上,客户端监测版本号新就自动升级了   http://www.cnblogs.com/hanwater/archive/2009/05/13/1455830.html
      

  12.   

    效果图:
    源码下载:
    http://download.csdn.net/source/2399266