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


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

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

帅哥哟,离线,有人找我吗?
东坡一剑
  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的窗口会重新出现!!

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

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

 

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


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/21 8:42:00 [只看该作者]

重新点击什么快捷图标? 项目图标吗?  现在自动升级是不会自动重新打开项目的了. 可能你第一次升级失败了.

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


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

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

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/11/24 22:30:00 [只看该作者]

 无法看见你的情况,得你是否写了些什么代码。

 可能是你写了一次/两次update的代码。

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


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

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


 回到顶部
帅哥哟,离线,有人找我吗?
东坡一剑
  6楼 | 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编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/11/24 22:45:00 [只看该作者]

 你如果新做一个例子自动升级的话,是否也会出现这种情况?

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


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

我试一下先

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


加好友 发短信
等级:二尾狐 帖子:531 积分:4155 威望:0 精华:0 注册:2012/11/26 21:54:00
  发帖心情 Post By:2013/11/24 23:18:00 [只看该作者]

我的也是这个问题,非得要重复升级两次才会有效

 回到顶部
帅哥哟,离线,有人找我吗?
东坡一剑
  10楼 | 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


 回到顶部
总数 33 1 2 3 4 下一页