本帖最后由 ffl871007 于 2013-10-16 17:55:57 编辑

解决方案 »

  1.   

    愚以为可以用WCF作为技术支撑,A即为WCF的client,和服务器上面的server端进行通信,获取client信息以及反馈等,这些WCF都可以实现(双工通信),而其支持多种协议tcp\ip,udp,http等,所以我觉得WCF适合不错的方案。
      

  2.   

    按照你的思路,程式A就是一个update了,
    用C写一个基本的执行文件,没有什么特别的技术,只要下来从后台页面的某个配置文件里面走步骤,
    比如判断环境,生成路径等等,
    判断.net版本环境,可以到注册表里HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup 取
    如果还要做到无值守的安装环境,会用到一下模拟键盘的技术,SendMessage WM_COMMAND SenInput等等
    环境有了之后,后面的事情就好办多了
    你可以让这个UPDATE走完全程,也可以拿自己熟悉的程式来走下面的步骤。这些都是权宜之计,这种方式去部署一个较大的应用不可取
      

  3.   


    我确实想把A做成一个首次安装+后续自动更新产品的 一种工具,用C好实现吗?首次安装要像QQ、360等类似安装的界面。另,部署一个较大的应用为什么不可取?如果想实现客户要求,还有什么好想法?
      

  4.   

    我给你一个建议,你先把说法调整成为“我觉得xxx安装方式很牛x,我想模仿其15个基本功能中的5个,我是这样分析这个xxx的.......(在此省略3000字)”。如果你用这个方式(而不是动不动就瞧不起人家的安装程序),也许能用3~5年时间学会这类软件的开发。否则,可能停留在刚毕业的大专生的水平,就改行搞行政了。
      

  5.   

    用delphi写。写来写去你在写一个安装程序。delphi做的开源的安装程序inno setup不是蛮好嘛,为什么要从头造轮子。
      

  6.   


    我确实想把A做成一个首次安装+后续自动更新产品的 一种工具,用C好实现吗?首次安装要像QQ、360等类似安装的界面。另,部署一个较大的应用为什么不可取?如果想实现客户要求,还有什么好想法?如楼下所说的,最终还是在做一个安装包,区别在于你想把这个安装包做的兼容好些,再好看些,和是否在iis上部署没什么太大关系了。你就做一后台页面然后update放上去,判断一下当前的环境和软件版本,然后下载相关的安装包执行,可能你想全程无人值守,那就做模拟操作。
    或者你想实现增量更新,那就建客户端文件索引做对比
    "不想使用VS安装包、ClickOnce、第三方工具等",不知道为什么要排斥第三方工具,这些都能很好的自定义界面了,如果你要自己去开发一套打包程序,繁琐又没必要
      

  7.   


    意思就是模仿ClickOnce(自动更新自己,自己是一个更新工具)+更新产品程式的功能(更新别人),自己一直是做.NET开发,所以才发帖问问大家怎么做,给点技术要求说明,自己好好准备,也没有瞧不起人家的安装程序啊,都说了是公司的产品,是公司不允许,OK?