现在我有一个用户不时地让他的XP笔记本电脑休眠。发生这种情况时,与服务器的连接会失败并触发异常。调用代码通常会捕获该异常并尝试重新连接。但在这种情况下,似乎Windows(或Perl?)捕获了异常并通过消息框将其传递给用户。
有人知道如何防止这种奇怪的事情发生吗?我的代码是否可以捕获“系统即将休眠”的信号?
为了澄清一些你已经提出的问题:
- 我不介意用户将他们的计算机休眠。我只需要找到一种处理它的方法。
- 涉及的Perl模块确实会抛出异常。它会执行类似于"die 'foo bar'"的操作。虽然应用程序完全基于浏览器,不使用类似于Wx或Tk的任何东西,但用户会得到一个标题为"poll_timer"的消息框。该消息框的内容正是$@的内容(在这个例子中是'foo bar')。
- 该应用程序使用perlapp编译成可执行文件。文档没有提到任何关于异常处理的内容。