当我把软件更新后。在局域网内在用我这软件的人那里这个软件怎么做会提示有更新了。只要我一做好更新,让这软件就提示更新呢。如果没有更新就不提示或是更新过了就不再提示。

解决方案 »

  1.   

    做成两个执行文件(当然也可以使用可执行程序自删除的技术,不过实现起来比较麻烦,如果想知道,可与我联系),一个为版本检测,另一个为主程序.
    在桌面和开始菜单中建立的快捷方式均指向版本检测程序,即先运行它,然后通过它检测局域网上的服务器中有无新的版本,可以根据主程序的建立时间或其它信息(如在PE文件的DOS段里存储版本),至于网络通讯方面,最简单的是使用共享,也可以使用C/S模式,甚至使用B/S模式,具体实现根据你的偏好,当有新版本时由该程序进行提示并升级,替换旧版本的主程序,最后由该程序以创建进程的方式运行主程序。还有一种思路,也需要两个文件,不同的部分在于,升级检测和网络通讯功能均由主程序进行,将新版本的主程序下载到指定的临时文件夹,然后启动一个Windows脚本程序(类似DOS的批处理),退出主程序,由脚本程序进行文件替换,替换完成后脚本程序再运行主程序。需要注意的是,在脚本程序中需要进行容错处理,以防主程序尚未完全卸载内存映像,从而导致升级失败.
      

  2.   

    感觉帖主还没有说到更新的问题而是在说,如何让软件知道有更新.....可以参考一下这里:http://topic.csdn.net/u/20080313/15/e66cde6c-c472-4657-b479-070725fd6c67.html3楼的办法.当知道有更新版本后,然后再是考虑如何更新到新版本的问题,也即楼上所说的问题.....