Foxtable(狐表)用户栏目专家坐堂 → 自动升级竟然要两次才能成功


  共有6931人关注过本帖树形打印复制链接

主题:自动升级竟然要两次才能成功

帅哥哟,离线,有人找我吗?
东坡一剑
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:366 积分:2478 威望:0 精华:0 注册:2013/1/13 23:43:00
自动升级竟然要两次才能成功  发帖心情 Post By:2013/11/21 1:50:00 [显示全部帖子]

在项目的Afterload事件中用如下代码自动升级

If Syscmd.Project.Update(False,False) = False Then

         '其他代码
        Forms("主界面").show()
End If

 

发布以后如果将升级包及升级Txet文件上传以后遇到一个奇怪的现象:

1、输入登陆密码后出现一个下载窗口;

2、然后是一个提示窗口,内容为:升级已成功,重新打开项目。

但是项目并不会自动打开,需要重新点击快捷图标才行,可是1和2的窗口会重新出现!!

第三次点击快捷图标才会真正打开项目

此时发现项目已经成功升级

 

实在找不到问题处在哪里,请教问题出在哪里。


 回到顶部
帅哥哟,离线,有人找我吗?
东坡一剑
  2楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:366 积分:2478 威望:0 精华:0 注册:2013/1/13 23:43:00
  发帖心情 Post By:2013/11/24 22:25:00 [显示全部帖子]

问题的关键是:现在我每次升级都要重复两次!最讨厌的是第一次完毕后它还要弹出一个对话框“在线升级已完成,将重新打开项目!”,完了又来一次,用户看起来就像一个笑话!不管换几个电脑,都是这个结果!而以前只要一次,而且可以自动打开项目,真不知道改成现在这个样子有什么好处。

 回到顶部
帅哥哟,离线,有人找我吗?
东坡一剑
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:366 积分:2478 威望:0 精华:0 注册:2013/1/13 23:43:00
  发帖心情 Post By:2013/11/24 22:36:00 [显示全部帖子]

将所有代码输出到word检查了一下,只有一次。


 回到顶部
帅哥哟,离线,有人找我吗?
东坡一剑
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:366 积分:2478 威望:0 精华:0 注册:2013/1/13 23:43:00
  发帖心情 Post By:2013/11/24 22:38:00 [显示全部帖子]

 

AfterOpenProject 的全部代码如下:

 

If Syscmd.Project.Update(False,False) = False Then

    If user.Type <> UserTypeEnum.Developer Then

        Dim n As Integer = GetConfigValue("Count",1)

        Dim Count As Integer = Registry.GetValue("HKEY_CURRENT_USER\Software\MyApp","Count",1)

        n = math.Max(n,Count)

        Dim Code As String = GetConfigValue("Register" & ComputerId,"")

        Dim Ok As Boolean

        If Code > "" AndAlso DecryptText(Code,"abc","abc") = ComputerId Then '如果注册码正确

            OK = True

        Else

            If n > 100 Then

                Forms("注册").Open()

                Code = GetConfigValue("Register" & ComputerId,"")

                If Code > "" AndAlso DecryptText(Code,"abc","abc") = ComputerId Then '如果注册码正确

                    OK = True

                End If

            End If

            If n > 1000 AndAlso Ok = False Then

                Messagebox.Show("您正在使用的产品已经超出试用次数!")

                Syscmd.Project.Exit()

            End If

        End If

        n = n + 1

        SaveConfigValue("Count",n)

        Registry.SetValue("HKEY_CURRENT_USER\Software\MyApp","Count",n)

    End If

    Forms("主界面").show()

End If

[此贴子已经被作者于2013-11-24 22:39:30编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
东坡一剑
  5楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:366 积分:2478 威望:0 精华:0 注册:2013/1/13 23:43:00
  发帖心情 Post By:2013/11/24 22:49:00 [显示全部帖子]

我试一下先

 回到顶部
帅哥哟,离线,有人找我吗?
东坡一剑
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:366 积分:2478 威望:0 精华:0 注册:2013/1/13 23:43:00
  发帖心情 Post By:2013/11/25 0:28:00 [显示全部帖子]

做了个例子,如果升级成功的话,Forms("主界面")的按钮数为零,结果发布后它干脆没有自动升级的功能了!

注明:放到ftp的Text中的文本内容为"2013/11/27",大家可以把在项目属性中把发布日期设置为文本内容之前的数据然后发布试试。真的搞不清楚是怎么回事。

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目17.foxdb


 回到顶部
帅哥哟,离线,有人找我吗?
东坡一剑
  7楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:366 积分:2478 威望:0 精华:0 注册:2013/1/13 23:43:00
  发帖心情 Post By:2013/11/25 10:43:00 [显示全部帖子]

要不您放到公司的ftp试试?

 


 回到顶部
帅哥哟,离线,有人找我吗?
东坡一剑
  8楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:366 积分:2478 威望:0 精华:0 注册:2013/1/13 23:43:00
  发帖心情 Post By:2013/11/25 10:54:00 [显示全部帖子]

前面那个要两次升级才成功的就是FTP空间,确实可以的,都试着升级了好几次了,全部成功了。


 回到顶部
帅哥哟,离线,有人找我吗?
东坡一剑
  9楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:366 积分:2478 威望:0 精华:0 注册:2013/1/13 23:43:00
  发帖心情 Post By:2013/11/25 11:18:00 [显示全部帖子]

http://58.64.188.246/northland

上面的路径,您感觉是个什么路径来着?

这个是我的虚拟主机上的一个文件夹。

用这个就能成功升级,不过要两次。

要不我从QQ把账户和密码告诉你们,帮忙诊断一下?


 回到顶部
帅哥哟,离线,有人找我吗?
东坡一剑
  10楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:366 积分:2478 威望:0 精华:0 注册:2013/1/13 23:43:00
  发帖心情 Post By:2013/11/25 15:44:00 [显示全部帖子]

换到本地测试:

明明我的Text文本内容是"2013/11/26"

而项目中的发布日期是"2013/11/20"

仍然告知已经是最新版本。

就是说升级没有成功。

 

这和远程的情况一模一样。


 回到顶部
总数 19 1 2 下一页