以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]关于远程更新界面和更新方法的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=78003)

--  作者:13865161910
--  发布时间:2015/11/30 14:32:00
--  [求助]关于远程更新界面和更新方法的问题

[求助]关于远程更新界面和更新方法的问题

问题1、 远程更新界面不友好的问题

 
图片点击可在新窗口打开查看此主题相关图片如下:qq图片downloads.png
图片点击可在新窗口打开查看

界面只有一个单一的下载窗口 下载目录文件+进度条 ,往往看不到进度条有明显进度,就提示更新完毕,重启窗口

如果客户网络或服务器出现异常,就会一直定格在这个界面

能否自定义设计一个更新窗口,含进度条显示百分比,并在网络或服务器出现异常的时候,有提示?

 

问题2、如何强制进行更新

如果弹出提示窗口,客户点击取消或cancel 按钮,就会直接进行后面的操作,如果对这个点击取消的操作做个判断,如果点击取消,则退出程序,否则只有更新完毕后,才能继续后面的窗口打开,如果选择静默升级,好像没有窗口提示,客户以为点击没有反应,其实程序却在进行后台升级操作。


[此贴子已经被作者于2015/11/30 14:33:19编辑过]

--  作者:大红袍
--  发布时间:2015/11/30 15:11:00
--  

1、

 

实时滚动条你做不了,你弄一个虚拟的,提示正在下载,然后自己偷偷下载文件,再指定升级路径

 

Network.DownloadFile("ftp://ftp_XXX:ftp-XXX@XXXXXXXX/Update/Update.txt","D:\\data\\Update.txt","" ,"" ,False, 100000, True)

Network.DownloadFile("ftp://ftp_XXX:ftp-XXX@XXXXXXXX/Update/Update1.zip","D:\\data\\Update1.zip","" ,"" ,False, 100000, True)

UpdatePath = "D:\\data"

Syscmd.Project.Update(False,True)

 

http://www.foxtable.com/help/topics/1402.htm

 

 

2、在Update代码的后面,加上退出系统的代码

 

Syscmd.Project.Exit() 正常退出Foxtable
Syscmd.Project.Exit(True) 先保存数据,然后退出Foxtable
Syscmd.Project.Exit(False) 不保存数据,强行退出Foxtable


--  作者:13865161910
--  发布时间:2015/11/30 16:36:00
--  回复:(大红袍)1、?实时滚动条你做不了,你...

自己设计的话,有个疑问,就是关于这个下载目录的问题,我看自动升级,update1是下载到软件安装目录的project文件夹下,是不是发布的时候,如果文件版本号有变动,才会下载update2的文件?这个压缩包文件下载到那个目录下?是不是自动覆盖?

 

 

这个远程升级的问题,我看BBS好多人提问,能否将这一块进行优化,提高设计性?默认这个下载窗口界面还真是.....难看呀图片点击可在新窗口打开查看

 

 

 类似于下面这种升级效果

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图download1.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:qq截图download2.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2015/11/30 16:38:10编辑过]

--  作者:大红袍
--  发布时间:2015/11/30 16:41:00
--  

1、先下载update.txt文件,然后看其版本和现在版本。再决定是否升级

 

2、你可以下载到任意一个文件夹里,最后指定到这个文件夹即可。

 

 


--  作者:13865161910
--  发布时间:2015/11/30 16:41:00
--  

刚刚用户在进行远程更新的时候,出现个新问题,无法正常更新,进度条半天不动,我远程在对方电脑上操作,在IE上登录远程服务器,在显示出的三个更新文件上面点击目标另存为,提示服务器拒绝登录,但是我自己这边IE操作下载一切正常,不知这是什么情况?!

 

点击取消升级后,提示如下错误信息

.NET Framework 版本:2.0.50727.3053
Foxtable 版本:2015.11.2.1
错误所在事件:项目,AfterOpenProject
详细错误信息:
System.Security.Cryptography.CryptographicException: 不正确的数据。

   at System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32 hr)
   at System.Security.Cryptography.Utils._DecryptData(SafeKeyHandle hKey, Byte[] data, Int32 ib, Int32 cb, Byte[]& outputBuffer, Int32 outputOffset, PaddingMode PaddingMode, Boolean fDone)
   at System.Security.Cryptography.CryptoAPITransform.TransformFinalBlock(Byte[] inputBuffer, Int32 inputOffset, Int32 inputCount)
   at System.Security.Cryptography.CryptoStream.FlushFinalBlock()
   at Foxtable.O  Oo o0.o_0O__00(String A_0)
   at Foxtable.oO  0 00.DecryptText(String Text, String Key, String IV)
   at UserCode.Ar3scHW6xvlRaEDjE()

 

手动下载服务器更新文件,然后发个客户,将其手动更新后,软件倒是可以正常使用了!

[此贴子已经被作者于2015/11/30 16:41:55编辑过]

--  作者:大红袍
--  发布时间:2015/11/30 17:13:00
--  

你搭建的是ftp服务器?不要用匿名用户登录,要设置用户,而且要有下载的权限。

 


--  作者:13865161910
--  发布时间:2015/12/11 13:53:00
--  回复:(大红袍)你搭建的是ftp服务器?不要用匿名用户...

在云服务器上使用的FileZilla,然后设置了用户名密码和对应的文件物理路径,项目中,也对应设置了账号密码的!

但是有些能正常下载,有些就无法下载!是不是与客户的机器设置也有关系? 


--  作者:大红袍
--  发布时间:2015/12/11 14:19:00
--  

不能下载的电脑,直接在浏览器里数据路径,是否可以下载?

 

或者执行这句代码报什么错?

 

Network.DownloadFile("ftp://ftp_XXX:ftp-XXX@XXXXXXXX/Update/Update.txt","D:\\data\\Update.txt","" ,"" ,False, 100000, True)

 

如果浏览器也不能下载,说明ftp搭建得有问题,尝试用比如 serv-u ftp 搭建


--  作者:qianqian1530
--  发布时间:2015/12/11 15:16:00
--  
.. 只有我 关心, 你这个皮肤是怎么做出来的么··


--  作者:13865161910
--  发布时间:2016/1/5 9:20:00
--  回复:(大红袍)不能下载的电脑,直接在浏览器里数据...
直接在浏览器输入路径的话,可以手动下载;使用下面的地址也能正常下载。
但是客户使用的时候,就是一直停在下载界面,进度条始终没有反应,很多就直接点击了取消,促使软件一直服务更新。
能否做一个类似的可视化的案例,这个自带的下载进度条真的不友好,13M的文件,1M/S的网速下载怎么也要个13秒左右吧。但是进度条压根就不动。
您上面建议的另辟蹊径的方式有个疑问,用系统自带的升级命令,会对比文件,然后进行update1或update2的选择性下载,自动覆盖升级,如果手动的话,我的文件在ftp服务器上,
下载到绝对路径还是设置相对路径,然后又如何覆盖文件呢?这个方法不太懂,望指教


另外,FTP设置的远程下载,端口是不是只能设置为21????
[此贴子已经被作者于2016/1/5 9:21:56编辑过]