On Mon, Jul 8, 2013 at 3:56 PM, Art Heimsoth <artst...@artheimsoth.com>wrote:
> Is there any general information on what a recommended approach
> might be for error handling/recovery with ooRexx and ooDialog?
> I have a specific problem right now, where I have not found a good
> solution. I run the application with Rexxhide and have found that
> if ooRexx errors, for example with a "Bad arithmetic conversion"
> type of error, if I have also have a .TimedMessage with an infinite
> timeout, the only way I have found to end the application and
> regain control is by using the Task Manager. Since the .TimedMessage
> blocks getting control via the normal windows "X" close, or a cancel
> button, and Rexxhide prevents a Ctrl-C from interrupting the
> interpreter. I could use a timed duration of the longest period I
> would expect the timed activity to take, but then the waiting message
> would also keep the dialog from continuing until the timeout period
> has expired. Looking for suggestions/thoughts.
>
>
In the next version of ooDialog, I'm going to have an ooDialog.exe that,
among other things, can be used to run ooDialog programs in a similar
manner to rexxhide.exe.
The difference will be that if a Rexx error condition is raised that ends
the program, a message box will display the condition information that is
normally written to the console.
However that will not help with your TimedMessage problem.
In general, I always run my ooDialog programs from the command line until
they are completely debugged. That should help some, presumably you do not
intend to have a bad arithmetic conversion.
For your specific problem here, I would write my own timed message dialog.
When using it, send a reference to the executing dialog to your timed
message dialog. In your timed message, periodically check back to see if
the other dialog is still alive. Quit the timed message if you discover
the other dialog is ended.
This still might not work if the error doesn't cause the other dialog to
end, but just causes it to hang.
All in all, I don't have any good recommendations. I could say don't write
any code that would cause an error, but ... ;-)
Reading back your description, I would think writing your own timed message
might work. Write it so that the timed message can be closed.
--
Mark Miesfeld
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
Oorexx-users mailing list
Oorexx-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-users