From: sysop                           
Subject: Re: How to see decw$xxxx on another screen? (DECTERM.COM)
News-Software: VAX/VMS VNEWS 1.4-b1  
Organization: Department of Nuclear Engineering Sciences
Date: 15 Sep 1992 11:06 EST  

In article <1992Sep14.161259.119263@marshall.wvnet.edu>, rcbi110@marshall.wvnet.edu writes...
> 
>I want to do the following but it doesn't work:
> 
>Telnet from a dec5000/200 with ultrix to a microvax3100
>run decw$whatever, but have it show up on the 5000's screen where I am sitting.
> 
>My eyeballs are bugging out, I am so tired of reading "decmanualese" that I
>can't make heads of tails of it anymore.  So PLAIN ENGLISH is appreciated :^)
> 
>((   ||  /\\ \\  / /\\  ((      R. Alan Monroe       ((  I'm not an actor, ((
> )) _// /--\\ \\/ /--\\  )) rcbi110@muvms3.wvnet.edu  )) but I play one     ))
>((              _       ((                           ((  on T...   Hey!!   ((
> ))  ||  /\\  //  ||_/   ))    Pinkwater Rules!       )) Who wrote this     ))
>((  _// /--\\ \\_ || \  ((            :^)            ((  script!?!?!   -me ((


You must follow the private_server_setup and security setup as described in
another response to your post.  However the user field, at least for TCPIP,
has never provided greater security for me (ie. just use *).  I also use LAT
as a transport, and create DECterms over DECNET, TCPIP, or LAT.

The following is a DCL comfile that I use to create a DECterminal on another
X server (running DECNET, TCPIP, etc).  This should be easy to follow and is
easily modified to run several of the other DECW$xxx apps.  Several days ago
I posted a client/server that would export the DECW$CLOCK to an X server on
the internet, but you could use this just as easily.  Some of the DECW$xxx
apps won't run this way (ie. DECW$CALENDAR).  I think this is because it
looks for startup files.

Good luck!

-------------------------------------------------------------------------------
Shawn A. Clifford, System Manager | Internet: sysop@robot.nuceng.ufl.edu
Nuclear Engineering Sciences      |		sac@eng.ufl.edu
University of Florida             | Home Phone: 904/335-4914
Gainesville, Florida  32611       | Work Phone: 904/392-1450  FAX: 904/392-3380
-------------------------------------------------------------------------------

$! Title:	DECTERM.COM
$! Author:	Shawn A. Clifford
$! Date:	23-JUL-1992
$! Purpose:	Create a DECterm and display it on another node.
$!		By default the remote node is NUCENG.
$! Usage:	@DECTERM [node] [transport]
$!
$!		where:  _node_ is the nodename for the remote host
$!			_transport_ is the network transport to use
$!
$!		Valid transports are:
$!			DECNET, TCPIP, LAT, and LOCAL, unless your system
$!		 	manager has added/removed transports.
$! Example:	@DECTERM "node.subnet.site.net" tcpip
$!		will create a DECterm window at the Internet node
$!		node.subnet.site.net (quotes are necessary so that DCL won't
$!		parse the '.') via the TCP transport layer.
$! Caveats:	For VMS and some Unix systems, the host must authorize
$!		your node, transport, and possibly your username (DECNET)
$!		before you may put an Xwindow on their display.
$!
$! Modification History:
$!
$! When		Who	What
$! ----------------------------------------------------------------------------
$! 22-AUG-1992	SAC	Have LOGINOUT create the process.  This way the process
$!			has unlimited CPU time (not any more).
$!			Also checks if we have a display already present.
$! ----------------------------------------------------------------------------
$! 'f$verify(0)
$ say := write sys$output
$!
$! -----------------------------------------------------------------------
$! Find out if this is the pass running from the LOGINOUT created process.
$! -----------------------------------------------------------------------
$	if (f$mode().nes."INTERACTIVE") then goto create_display
$! ------------------------------------
$! Check for existence of DECW$DISPLAY.
$! ------------------------------------
$	if (f$trnlnm("DECW$DISPLAY").nes."")
$	then
$	   if (f$getdvi(f$trnlnm("DECW$DISPLAY"),"exists"))
$		then
$			say ""
$			say "You already have a display:"
$			show display 'f$trnlnm("DECW$DISPLAY")
$			say "Press <RETURN> if this display is Ok."
$			read/prompt="Otherwise hit any key and then <RETURN>:  " -
				sys$command dummy
$			say ""
$			if (dummy .eqs. "") then goto loginout
$			set display/delete 'f$trnlnm("DECW$DISPLAY")
$		endif
$	endif
$! ------------------
$! Get the parameters
$! ------------------
$	if (P1 .nes. "")
$	then
$		node = P1
$	else
$		read/prompt="Node [NUCENG]:  " sys$command node
$		if (node .eqs. "") then node = "NUCENG"
$	endif
$	if (P2 .nes. "")
$	then
$		tport = P2
$	else
$		read/prompt="Transport [DECNET]:  " sys$command tport
$		if (tport .eqs. "") then tport = "DECNET"
$	endif
$! ------------------
$! Create the display
$! ------------------
$	set display/create/node='node'/transport='tport' REM_DISPLAY
$! -------------------------------------------------------------------------- 
$! Define DECW$DISPLAY.  The DECW$xxx progs interpret this by default.
$! Could use the /DISPLAY qualifier, but this is like setenv DISPLAY on unix.
$! --------------------------------------------------------------------------
$ 	define/nolog/job decw$display 'f$trnlnm("REM_DISPLAY")
$! ------------------------------------------------------------------------
$! Run LOGINOUT.  LOGINOUT will then use this program to create the DECterm.
$! Create the display from the process created by LOGINOUT.EXE
$! ------------------------------------------------------------------------
$ loginout:
$	this_prog:='f$environment("procedure")
$	run/inp='this_prog'/out=nl:/error=nl: SYS$SYSTEM:LOGINOUT.EXE
$! -------------------
$! Create the terminal
$! -------------------
$ create_display:
$	node := 'f$getsyi("nodename")
$	create/terminal/big_font/insert/detach -
		/window=(title="''node' DECterm",icon="''node'")
$ exit ($status)
Xref: sparky comp.os.vms:14812 comp.org.decus:813 vmsnet.misc:810