以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- [求助]自定义函数出错时弹出的messagebox窗口问题? (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=119063) |
-- 作者:ericsky -- 发布时间:2018/5/17 8:45:00 -- [求助]自定义函数出错时弹出的messagebox窗口问题? 在移动客户端的开发中,在HttpRequest事件中的函数如果运行出错,会弹出提示窗口, 造成HttpRequest事件停止运作。 请问:如何屏蔽或者如何设置自动关闭messagebox窗口?谢谢!
|
-- 作者:有点甜 -- 发布时间:2018/5/17 9:10:00 -- 1、你就不应该写messageBox的代码,请删除掉那些代码;
2、改成output.log等方式记录出错信息,如 http://wechat.foxtable.com:9009/WebHelp/scr/we0008.htm
http://www.foxtable.com/webhelp/scr/0435.htm
[此贴子已经被作者于2018/5/17 9:10:18编辑过]
|
-- 作者:ericsky -- 发布时间:2018/5/17 9:23:00 -- 回有点甜老师:代码中没有包含messagbox的代码。 在HttpRequest事件中的代码如果包含函数,如果函数运行出错,系统会自动跳出messagebox窗口, 这种错误,在BeforeShowErrorMessage中做了设置也不起作用的,您帮忙看看有办法解决吗
|
-- 作者:有点甜 -- 发布时间:2018/5/17 9:24:00 -- try catch + BeforeShowErrorMessage
http://www.foxtable.com/webhelp/scr/2070.htm
|
-- 作者:ericsky -- 发布时间:2018/5/17 11:23:00 -- 有点甜老师,我试了下,函数出错的弹窗,捕获不到,这也是很早就发现的问题, 只不过以前是操作端的弹窗,按确认后可以继续使用, 但是现在是无人值守的服务端,弹窗后就卡住了。 您能给个解决代码吗? 谢谢!
|
-- 作者:有点甜 -- 发布时间:2018/5/17 12:01:00 -- 以下是引用ericsky在2018/5/17 11:23:00的发言:
有点甜老师,我试了下,函数出错的弹窗,捕获不到,这也是很早就发现的问题, 只不过以前是操作端的弹窗,按确认后可以继续使用,
但是现在是无人值守的服务端,弹窗后就卡住了。
您能给个解决代码吗?
谢谢!
弹出的错误的窗口,请截图发上来看看。
基本上 try catch + BeforeShowErrorMessage 都可以处理90%以上的错误,除非你执行了一些特殊的代码才会导致的。 |
-- 作者:ericsky -- 发布时间:2018/5/17 15:15:00 -- 回有点甜老师:函数出错弹窗截图如下: 找不到函数: [此贴子已经被作者于2018/5/17 15:16:24编辑过]
|
-- 作者:有点甜 -- 发布时间:2018/5/17 15:39:00 -- 1、找不到xxx函数,是因为你代码写错导致的,你要修改你的代码才行;
2、不存在xxx表格,也是你代码写错导致的,同样要修改你的代码;
3、这些错误,目前无法屏蔽掉,如果要屏蔽,试试用这种方式 http://www.foxtable.com/webhelp/scr/2713.htm
|
-- 作者:ericsky -- 发布时间:2018/5/17 16:20:00 -- 回有点甜老师: 关于您的1、2点,如果发现了,肯定会及时修正的,但是使用中,难免会有网络问题或者代码不周全的情况, 这时候服务端就卡住停止运作了。 关于第3点,ShowAppWindow,是使用于外部程序,用不来啊。 我现在只能用很笨的方法:(messagebox弹窗的时候,是没有活动窗口的,用这个来做判断,重启服务端) 添加一个自动重启的计划任务,代码如下: Dim frm As WinForm.Form = Forms.ActiveForm Application.restart End If 希望能有更好的方法来捕获系统messagebox弹窗的方法1 谢谢有点甜老师的指导! @狐狸爸爸 |
-- 作者:有点甜 -- 发布时间:2018/5/17 16:25:00 -- 做一个计划,定时执行下面代码,不同的标题,自己根据实际需要添加。
ShowAppWindow("提示", 5) |