• ClickOnce的更新策略


    最近公司用ClickOnce技术发布的一个产品,在客户那边出现了些奇怪的现象。客户那边的具体的情况是这样的:例如是1.0.0.6版本号的程序在服务器A上发布,同一版本号1.0.0.6也同时发布在服务器B上。问题来了,假如客户机器是干净的,也即是这台机器是从来没有运行过这个程序的,如果客户先登录服务器A,那么客户机就会下载1.0.0.6版本的程序回来在本机运行,这是正确的。此时客户把程序关了,然后去到服务器B上运行,那么客户机还会不会再从服务器B上下载1.0.0.6这个版本呢?那么ClickOnce技术的具体更新策略是怎样的呢?

    我找啊找啊,发现ClickOnce技术这个东西只有在msdn有些更新策略,但是根本不是我想要的那些,所以我就自己来试观察它的更新策略。

    如下是我总结出来的更新策略:

    1、测试条件:在同一服务器上发布两个同一版本1.0.0.6的程序,地址分别是:http://www.kk.com/kay/A.html ,http://www.kk.com/kay/B.html ,虽然版本号不变,但是B版本的Code是在A版本上做了些更改的。

    测试结果:你先从哪条link登录上去,那么它就下载那条link的执行,如果你再登录第二条link的,虽然它下载了,但是安装是会失败的。具体原因是不知道。

    例如:你先用http://www.kk.com/kay/A.html登录,那么它就下载这个来安装执行。此时你把http://www.kk.com/kay/A.html的这个程序关了,再登陆http://www.kk.com/kay/B.html    那么它是不会安装http://www.kk.com/kay/B.html这个的

    2、测试条件:先在服务器上发布1.0.0.6版本的A,然后用http://www.kk.com/kay/A.html来下载运行。此时改变A的code,但是版本号还是1.0.0.6,然后把原先在服务器上的删掉,再把改变了code但是版本号没有改变的发布上去,link还是http://www.kk.com/kay/A.html,然后在客户机还是用这条link去登录

    测试结果:发现在客户机上运行的还是旧的code,所以ClockOnce的更新是只看版本号的,如果你版本号没有变,即使你改了Code,它也是不会自动更新的。

    3、如果是同一版本的发布在两台不同ip地址的服务器的话,那么它还是会下载的,在客户机上各保存一份跟对应服务器上对应的副本。

  • 相关阅读:
    Security and Cryptography in Python
    Security and Cryptography in Python
    Security and Cryptography in Python
    Security and Cryptography in Python
    Security and Cryptography in Python
    Security and Cryptography in Python
    Security and Cryptography in Python
    《EffectiveJava中文第二版》 高清PDF下载
    《MoreEffectiveC++中文版》 pdf 下载
    《啊哈c语言》 高清 PDF 下载
  • 原文地址:https://www.cnblogs.com/jiekk/p/1969751.html
Copyright © 2020-2023  润新知