给个简单的思路:做个启动程序,启动主程序前先到服务器检测是否有新版本,有则下载覆盖之;没有就直接启动主程序。这里有个文档和源码都齐全的升级组件,你可以参考下 http://download.csdn.net/detail/vb763305825/5305468

解决方案 »

  1.   

    具体方案,你就用微软的ClickOnce部署吧。
      

  2.   

    谢谢指教,不过我更需要一个比较具体的例子
    你要的到底是方案还是源码?
    方案很简单,两个程序,一个主程序,一个升级程序,先启动哪个都无所谓.
    然后判断版本,下载.
    下载方式可以很多种,socket传输,http下载,数据库读取文件,或者共享目录直接COPY,根据环境选择一种
    直接求 DEMO,每个人实现方式不一样,也不能保证在你的应用中合适.
    问题并不复杂,把问题分解开,哪里不会用查下就行了.
    想不劳而获,直接拿到源码改都不改就用,不现实.
      

  3.   

    http://download.csdn.net/detail/happy09li/3705357
      

  4.   

    http://hi.baidu.com/xnlzg/item/36c0c7006c790cd11ff04603
      

  5.   

    楼上都说的很清楚了,两个进程,一个主进程,一个升级进程,升级进程负责判断本地程序版本v1跟服务器版本v2,如果v2>v1,就从服务端下载更新包到本地,然后解压覆盖即可,很简单,自己尝试着写写吧
      

  6.   

    可以用iis的下载来实现呀,我是做过,看上去笨一些,但是很实用很好用的。原理大家都知道就是判断文件日期然后替换即可,把握这个思路其实只要做一个判断->下载->替换->启动的程序就可以了,专门做一个下载器,伪装成程序的主入口,每次进入都点击,但是内部是一个判断是否有更新的逻辑,下载完成后再隐藏当前窗体然后启动主程序窗口即可,前提是你的程序得做成dll单个模块的才好一些,如果只是一个单个的exe的话也一样的原理,每次只要下载一个更新文件即可。
      

  7.   

    我的更新程序是写在主exe里的。但是更新文件需要用Inner setup做成安装包。判断完本地版本和服务器版本后 ,主程序调下载安装包,调用安装包然后关掉自己就行了。这样避免了升级进程的存在,麻烦打是每次都要打包。
      

  8.   

    moeny 多多 就有人给你了