Foxtable(狐表)用户栏目专家坐堂 → [求助]用2017版只要运行关闭项目的代码 就会报错(已解决)


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

主题:[求助]用2017版只要运行关闭项目的代码 就会报错(已解决)

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


加好友 发短信
等级:三尾狐 帖子:668 积分:8561 威望:0 精华:0 注册:2011/5/5 23:55:00
[求助]用2017版只要运行关闭项目的代码 就会报错(已解决)  发帖心情 Post By:2017/6/28 14:32:00 [只看该作者]

如下图,这是什么错误?

 

只要用到 Syscmd.Project.Exit(False) 或 Syscmd.Project.Exit() 和 basemainform.Close  都会报错

 


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

 

 

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

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试.rar

 


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



[此贴子已经被作者于2017/6/29 9:36:39编辑过]

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/28 15:24:00 [只看该作者]

 你的是最新版了么?发布空项目是否有错?

 

 你代码里是不是用了反射?去掉对应代码、重新引用dll是否还有问题?


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


加好友 发短信
等级:三尾狐 帖子:668 积分:8561 威望:0 精华:0 注册:2011/5/5 23:55:00
  发帖心情 Post By:2017/6/28 16:42:00 [只看该作者]

17年6月12号版本,我没调用外部DLL,现在删除了部分调用WINDOWS的代码在测试中,空项目暂时没测试

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2017/6/28 16:42:00 [只看该作者]

太早期的版本,第一次没办法自动升级,必须全部覆盖一次

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


加好友 发短信
等级:三尾狐 帖子:668 积分:8561 威望:0 精华:0 注册:2011/5/5 23:55:00
  发帖心情 Post By:2017/6/28 16:58:00 [只看该作者]

还是不行,我现在是直接发布,没用在线升级,发布后直接运行的

 

            MessageBox.Show("该终端的授权信息验证失败,授权信息被非法修改,请联系开发者验证处理![错误代码:ZC02]","错误提示",MessageBoxButtons.Ok, MessageBoxIcon.Warning)
            Syscmd.Project.Exit(False)

 

运行到这里就报错,上面图的提示

 

 

BeforeCloseProject

 

 

With DataTables("临时订单明细")
    .DataRows.Clear() '清除所有行
End With
DataTables("临时订单明细").Save()
If Forms("登陆验证").opened Or vars("退出") = "是" Then
    Return
End If
If pause = False Then
    If Messagebox.Show("确定要退出吗?","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.No Then '如果用户选择否
        e.Cancel = True '取消关闭项目
        Return
    End If
End If
vars("提示") = "系统退出中,请稍后……"
Forms("加载").show
Application.DoEvents()
If _czyzh <> "" Then
    DataTables("yhgl").SQLReplaceFor("zt", "离线", "dlzh = '" & _czyzh & "'")
End If
For Each dt As DataTable In DataTables
    dt.save
Next
Forms("加载").close

 

 

感觉都是去到关闭项目就会报错

[此贴子已经被作者于2017/6/28 17:01:31编辑过]

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/28 17:07:00 [只看该作者]

Syscmd.Project.Exit(False)

 

如果改成下面呢?

 

Syscmd.Project.Exit()

 

或者

 

basemainform.Close

 

---------------------------------------如果你 BeforeCloseProject 不写代码呢?


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


加好友 发短信
等级:童狐 帖子:281 积分:2264 威望:0 精华:0 注册:2013/12/2 13:34:00
  发帖心情 Post By:2017/6/28 17:14:00 [只看该作者]

我尝试了一种解决方案:
计划管理中增加一个计划,时间设置好。
代码中写:

Syscmd.Project.Exit()‘同时停止此计划执行

任何位置需要关闭项目时,执行此计划。





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


加好友 发短信
等级:三尾狐 帖子:668 积分:8561 威望:0 精华:0 注册:2011/5/5 23:55:00
  发帖心情 Post By:2017/6/28 17:21:00 [只看该作者]

还是不行,BeforeCloseProject 不写代码 也是会报错

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


加好友 发短信
等级:三尾狐 帖子:668 积分:8561 威望:0 精华:0 注册:2011/5/5 23:55:00
  发帖心情 Post By:2017/6/28 17:34:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试.rar

 


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

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

 

我现在做了个测试的列子,直接关闭都会报错




[此贴子已经被作者于2017/6/28 17:38:04编辑过]

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


加好友 发短信
等级:三尾狐 帖子:668 积分:8561 威望:0 精华:0 注册:2011/5/5 23:55:00
  发帖心情 Post By:2017/6/28 17:37:00 [只看该作者]

我上传了例子,没啥代码的,直接点击关闭都会报错
[此贴子已经被作者于2017/6/28 17:38:52编辑过]

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