| RE: <<< Note 2784.0 by RHETT::WEST >>>
-< Adding Application Menu Choices. >-
>> The customer is trying to do a { create/terminal $dir }
>> and have that invoked from the applications menu of the
>> Session Manager?
>> ..what happens is the Decterm comes up and goes away.
>> If you do what the manual says { create/terminal/detach $dir }
>> ..it ignores the dir command leaving the newly
>> created DECterm.
The problem I see here is not with the Session Manager but with the
understanding of CREATE/TERMINAL.
The format is CREATE/TERMINAL [command_string] where the parameter is
described as:
command-string
Specifies a command string that is to be executed in the context
of the created subprocess. You cannot specify this parameter with
the /DETACH or /NOPROCESS qualifiers. The CREATE/TERMINAL command
is used in much the same way as the SPAWN command.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
If you try CREATE/TERM $DIR from DCL you will notice that the DECterm window
appears, does the directory command, and then disappears. This is not a bug
but a feature ;^) of the CREATE/TERM command.
From what you described you may want to do something like the following:
Create a com file that contains:
$ dir
$ wait 00:00:15
Then set up the application definition from the Session Manager as:
CREATE/TERMINAL $@DIR_COM.COM
Where DIR_COM.COM is the name of the com file you just built. I believe
that this is what is desired from what you described.
And as for the documentation...I don't have any so I'm sorry I can't help you
there.
-=> Jim <=-
|
| Re: .1
I've already answered .0 in the DECTERM conference, but I'd like to clarify
a couple of things in .1.
> command-string
> Specifies a command string that is to be executed in the context
> of the created subprocess. You cannot specify this parameter with
> the /DETACH or /NOPROCESS qualifiers. The CREATE/TERMINAL command
> is used in much the same way as the SPAWN command.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
There's an important difference between CREATE/TERMINAL and SPAWN. By
default SPAWN waits for the subprocess to terminate before it exits, and you
can use /NOWAIT to tell SPAWN not to wait. With CREATE/TERMINAL, the
default is /NOWAIT and to make CREATE/TERMINAL wait for the subprocess to
exit you have to use /WAIT.
> If you try CREATE/TERM $DIR from DCL you will notice that the DECterm window
>appears, does the directory command, and then disappears. This is not a bug
>but a feature ;^) of the CREATE/TERM command.
In this particular case /WAIT would have been a better default. In the
cases I was thinking of at the time /NOWAIT seemed like a better default,
but perhaps it was better to make /WAIT the default if only to be more
compatible with the SPAWN command.
> From what you described you may want to do something like the following:
>
> Create a com file that contains:
>
> $ dir
> $ wait 00:00:15
>
> Then set up the application definition from the Session Manager as:
>
> CREATE/TERMINAL $@DIR_COM.COM
>
> Where DIR_COM.COM is the name of the com file you just built. I believe
> that this is what is desired from what you described.
This wouldn't solve the problem, because the process running CREATE/TERMINAL
would exit before the directory was done. In the DECTERM conference I
suggested setting the application definition to:
CREATE/TERMINAL/WAIT $DIR
This would display the directory, but the window would disappear as soon as the
directory had been displayed. It might be better to combine the two ideas:
CREATE/TERMINAL/WAIT $@DIR_COM.COM
In DIR_COM.COM it might also be better to replace the { wait 00:00:15 } with
{ inquire dummy "Press <Return> when ready" }.
> And as for the documentation...I don't have any so I'm sorry I can't help you
>there.
I think this is documented in the V5.3 New Features Manual, but eventually
it should be in the DCL Dictionary. You can also say HELP CREATE/TERMINAL.
-- Bob
|