HP OpenVMS Systemsask the wizard |
The Question is: I have an online application written using DEC C and FMS. I have no problems debugging this application. However, some of the screens in the online application send DEC message queue messages (REQUEST) and wait until it receives a RESPONSE to the messag e it sent. There is a detached process which acts as a message handler. It continuously reads the messages from the queue that my online programs and other batch programs send to, processes it according to the message type and sends a response. Then t he online program can continue and process the data sent in the message response. What I need to do is to be able to debug the detached process, which is the message handling program. I have tried various methods such as trying to attach to the detached process but VMS didn't allow it. Do you have any suggestions on what to do? The Answer is :
The OpenVMS Debugger can be run remotely, passing a workstation (WSA0:)
device name as part of the detached process startup (/OUTPUT=WSAn:),
passing a DECterm (created via a call to the DECw$Term_Port routine or
via CREATE/TERMINAL), passing the target device to the debugger via the
DBG$* logical names, starting up the detached process from within a
(temporary) DCL procedure containing the appropriate SET DISPLAY command,
or various other techniques.
For example:
$ SET DISPLAY/CREATE[/EXECUTIVE]...
$ wsa = f$trnln("DECW$DISPLAY")
$ RUN image/DETACH/INPUT=NLA0:/OUTPUT='wsa' ...
As there is no way to interrupt the detached process via CTRL/C or CTRL/Y,
you may want to provide a way for the application to perform a call to
lib$signal( SS$_DEBUG ) to invoke the debugger. (Search for "SS$_DEBUG"
in the appendix of the debugger manual for details.)
|