![]() |
![]() HP OpenVMS Systemsask the wizard |
![]() |
The Question is: I have an interactive image (a news reader) that must be run on an 80 column terminal. I normally like to have my terminal width set to 132. I've tried to create a DCL command procedure that will do a SET TERMINAL /WIDTH=80, RUN the interactive image, a nd then SET TERMINAL /WIDTH=132. So here's what I have: $ SET TERMINAL /WIDTH=80 $ RUN SYS:NEWS.EXE $ SET TERMINAL /WIDTH=132 When I run this command procedure, it set's the terminal width properly, loads the newsreader, and then immediatly closes it and sets my width back to 132. My question is: Is there a way to force a DCL command procedure to wait for an interactive image to exit before it continues? Thanks, Ed "mid-level DCL hacker" Davis The Answer is : Excepting certain explicit command sequences such as SPAWN/NOWAIT, DCL is entirely synchronous and waits for the image to complete. DCL does not proceed until the image exits. Please ask whomever supports the image in question for assistance. You clearly believe this has to do with the terminal width, though the OpenVMS Wizard strongly suspects this is simply the image encountering an error or unexpected condition and (quickly) exiting. Most likely, the image is simply attempting to read from SYS$INPUT and is reading an EOF (generated from the $ command immediately following the image). If the program is attempting to read input, you can embed the data directly into the command procedure, or you can temporarily redirect the input out of the command procedure: $ define/user sys$input sys$command $ run sys:news.exe $ ! next command Newsreader tools such as the Freeware MXRN tool can be run from DCL command mode, and might provide an alternative to this approach.
|