解决方案 »

  1.   

    直接做成在线更新不就好了么?简单的方法就是共享服务器一个文件夹,每次运行exe先访问文件夹,通过判断版本号,将新的文件拷过来。这样,只要能够访问服务器,都能拿到完整程序,不用每次都拿U盘拷,也能预防使用者版本不统一。再说两点
    1、推荐更新另外写成EXE,不然在运行时无法覆盖自身。
    2、能做成FTP效果会更好,因为有时候会跨网段、外网什么的
      

  2.   

    这个 不是应该告诉他们 拷贝的是文件夹而不是单独的exe么
      

  3.   

    思路其实比较简单,让升级程序和升级包保证"相互可见"就行了
    方法一:
    将升级文件(建议打成zip包)放到系统目录(比如C:\Docume~\AllUser\ApplicationData\XXX)
    AllUser目录一般对所有用户都可读写方法二:
    将升级Zip包作为资源文件嵌入到winfrom程序中,运行后将zip资源解压出来再升级
    读写嵌入式资源
    http://www.cnblogs.com/zhangjun1130/archive/2011/04/11/2012566.html
      

  4.   

    TO fgq0613 :
    你好,可能我的意思没有表达清楚1、源程序不用进行任何修改,你只要做个新程序专门针对你的软件进行更新即可,新程序作为程序入口,更新完成后直接调用你原程序的exe2、服务器所说的不一定是外网服务器,也可以是你的内网数据库服务器,甚至是你的个人PC机(如果24小时开着一点问题都没有),我说的外网是指有对外业务的情况,比如在外销售部查单,你不会先快递个U盘过去吧?
      

  5.   

    我新手,不过我做过类似的事情。我给你个建议吧,与其用C#写代码的方式,不如用INNO setup安装升级的方式来做,这样做的效果更好。而且更简单。至于INNO setup的代码,也很简单,要的话我再给你。我公司就是做产品的,也有软件,软件经常要更新,更新就一般更新EXE而已,也就一两M的事,初次回复,可能啰嗦了点。