以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何动态设置自动升级  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=90751)

--  作者:天蝉一线
--  发布时间:2016/9/21 8:43:00
--  如何动态设置自动升级
帮助里面没有,能不能麻烦老师提供。我主要是涉及局域网和互联网同时并存的现象,做两个项目太费事,还容易出错。
--  作者:blackzhu
--  发布时间:2016/9/21 8:46:00
--  
 

发布后程序的远程自动更新  帮助的这一章


--  作者:天蝉一线
--  发布时间:2016/9/21 9:32:00
--  
有没有具体的例子,我参考一下
--  作者:有点蓝
--  发布时间:2016/9/21 10:07:00
--  
没有例子,这个单从例子是无法体现这个过程的,按帮助一步步做,什么地方不通再提出来

1、设置升级路径,看http://www.foxtable.com/webhelp/scr/2934.htm,看步骤1和4
在AfterOpenProject添加升级代码:
If Syscmd.Project.Update(False,true) = False Then \'如果没有升级
    
\'原来AfterOpenProject其它代码
End If

2、发布项目,拷贝到其它客户端电脑

3、修改项目

4、再次发布项目,注意修改发布窗口远程升级页面的发布日期,可以自己加上时分秒,建议不要大于当时时间,但是要大于之前发布的时间
勾选发布窗口远程升级页面的“生成升级包”复选框

5、把升级包拷贝到第一点的升级路径中

6、启动客户端之前发布的项目,测试升级是否成功
[此贴子已经被作者于2016/9/21 10:08:05编辑过]

--  作者:狐狸爸爸
--  发布时间:2016/9/21 10:43:00
--  

UpdatePath
字符型,用于设置或返回在线升级路径,有了这个变量,我们可以动态设置升级路径:

 

If Network.Ping("192.168.11.1") Then
    UpdatePath= "局域网升级包地址"
else
    UpdatePath= "互联网升级包地址"
End If
Syscmd.project.Update(....)


--  作者:天蝉一线
--  发布时间:2016/9/21 11:46:00
--  
 PublishDate 的日期这样写代码好像不对
PublishDate = #9/21/2016#

Dim s As string = FileSys.ReadAllText("c:\\data\\table.txt")

打横杠的地方应该读取本地发布项目的update.txt,还是服务器升级包里面的日期

--  作者:狐狸爸爸
--  发布时间:2016/9/21 11:48:00
--  

PublishDate 不可以修改,是只读的,返回正在运行的项目的发布日期,就是项目属性中设置的日期。

 

 


--  作者:天蝉一线
--  发布时间:2016/9/21 11:50:00
--  
意思是代码里面不需要设置PublishDate
--  作者:有点蓝
--  发布时间:2016/9/21 14:09:00
--  
是的,在发布窗口设置好就可以