以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- 这个发布后程序的远程更新都有什么作用吗,假设我现在发布了一个项目,安装在了其它电脑上,然后再把源项目添加了一些功能,比如,添加了一个窗口之类的,那么,这个已经安装的客户端能更新吗,求解! (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=111272) |
-- 作者:lzw001 -- 发布时间:2017/12/19 10:54:00 -- 这个发布后程序的远程更新都有什么作用吗,假设我现在发布了一个项目,安装在了其它电脑上,然后再把源项目添加了一些功能,比如,添加了一个窗口之类的,那么,这个已经安装的客户端能更新吗,求解! 这个发布后程序的远程更新都有什么作用吗,假设我现在发布了一个项目,安装在了其它电脑上,然后再把源项目添加了一些功能,比如,添加了一个窗口之类的,那么,这个已经安装的客户端能更新吗,求解! |
-- 作者:有点甜 -- 发布时间:2017/12/19 10:56:00 -- 只要你把升级包放在升级路径那里,那么只要你项目里面写有update的代码(afterOpenProject或者某个升级按钮click),就会读取升级路径的文件进行比较和更新。 |
-- 作者:lzw001 -- 发布时间:2017/12/19 11:00:00 -- 天哪,这个是不是很复杂的呢 |
-- 作者:有点甜 -- 发布时间:2017/12/19 11:02:00 -- 什么复杂?
3.在线升级 需要提醒一下,本节介绍的内容是针对发布后程序的远程自动升级,所以要测试的话,必须运行发布后的程序进行测试。 你可以在你的项目中加上一个在线升级的菜单命令或者按钮,代码很简单: Syscmd.Project.Update() 执行上面的代码,系统首先检索远程升级路径中的update.txt文件,获得项目版本日期和Foxtable版本日期,和本机的项目版本日期和Foxtable版本日期进行比较,然后根据比较结果进行动作: A、如果本机的项目版本日期大于等于update.txt中的项目版本日期,则不进行任何动作。 升级包下载完成后,会自动解压并覆盖本机的文件,完成升级。 至此我们的在线升级功能已经完成,即使你是一个初次接触编程的人,应该也能即时掌握。 Update的语法: Syscmd.Project.Update(Prom1, Prom2) 例如希望自动升级能够完全"静默",发现新版本时不提示,自动开始升级,没有发现新版本时也不提示: Syscmd.Project.Update(False,False) 如果我们在AfterOpenProject下面的代码: Syscmd.Project.Update(False,False) 目的是希望打开项目的时候自动升级,然后打开窗口1。 If Syscmd.Project.Update(False,False) = False Then \'如果没有升级 也就是说Update执行后会返回一个逻辑值,如果升级成功,返回True,否则返回False。 总之,如果需要在AfterOpenPoject事件中实现自动升级,那么原有的AfterOpenProject事件代码必须包括在这个判断中,只有没有升级的情况下,才执行原来的代码: If Syscmd.Project.Update(False,False) = False Then \'如果没有升级 |
-- 作者:lzw001 -- 发布时间:2017/12/19 11:11:00 -- 一直按照这个步骤就行了吗? |
-- 作者:有点甜 -- 发布时间:2017/12/19 11:14:00 -- 1、你项目里面要写update代码,一两句代码而已。写到afterOpenProject事件;
2、你修改项目后,重新发布,把发布后的升级包放在升级路径那里去;
3、客户端旧项目打开后执行update代码,会自动完成程序的更新。 |
-- 作者:lzw001 -- 发布时间:2017/12/19 11:41:00 -- 好的,这个升级路径的话是指本地电脑的盘吗 |
-- 作者:明天的灵 -- 发布时间:2017/12/19 12:44:00 -- "升级路径"是指程序能读到的路径 |
-- 作者:有点甜 -- 发布时间:2017/12/19 12:51:00 -- 以下是引用lzw001在2017/12/19 11:41:00的发言:
好的,这个升级路径的话是指本地电脑的盘吗
升级路径在你发布的时候指定。
如果是局域网使用,可以设置成共享文件夹,如 \\\\192.168.1.51\\某个共享文件名
如果是互联网使用,你需要搭建一个ftp或者一个http,然后写这样的路径,如 http://foxtable.com/download/80222/
|
-- 作者:lzw001 -- 发布时间:2017/12/19 14:16:00 -- 好的 |