使用ClickOnce,对于一些plugin插件总是打包不进去,而且控制安装目录什么的也不方便。
还是觉得安装包比较方便。但是有个问题,安装之后的自动更新,总不能每次都卸载安装,更新比较频繁。环境是局域网内,可以访问服务器,可以文件夹共享。
我想程序自己检测新版本,然后把对应目录的文件现在覆盖就行了。(程序是绿色版,服务装在服务器上)不知道有类似的实现或者组件吗?

解决方案 »

  1.   

    AppLife Update
    my blog
    http://ufo-crackerx.blog.163.com/
      

  2.   

    一般都是通过web services/WCF查询服务器进行升级   
    配置XML文件保存版本信息,查询服务器获取版本如是最新版本就不要升级   
    还可使用smart client   
    文件覆盖进行软件升级File.WriteAllText("test.bat",
    @"@echo off
    :run
    del %1 >nul
    if exist %1 goto run
    del test.bat
    ");
    ProcessStartInfo p= new ProcessStartInfo();
    p.FileName = "test.bat";
    p.Arguments = System.Reflection.Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName;
    p.WindowStyle = ProcessWindowStyle.Hidden;
    Process.Start(p);
    http://topic.csdn.net/u/20090422/08/69f9713b-3982-4313-ab11-7fb6eefdcf93.html
      

  3.   

    InstallShield 有 Live Update 工具。Windows Installer 也支持 Patch 安装程序。