joltes@husc9.harvard.edu (Richard Joltes) (09/27/90)
A question for the DECwindows gurus out there... I run most of my applications on my trusty(?) VS2000 but have access to some more powerful (i.e. 8550 running VMS and 5400 running Ultrix) servers. So I'd like to start remote sessions on those nodes and pop the displays back to my workstation. VMS is easy, but the standard method is to create a DECterm, set host to the target node, and do $ set display/create/node=xxxxxx $ <invoke application> which seems a pain. Has anyone worked up an easier way (i.e. local .exe or comfile that will establish the session and start up the application)? Ultrix is trickier. I access this system using a Multinet TELNET session, and the only method I've found in TFM uses UCX. Anyone done this successfully using Multinet (or DECnet/Ultrix)? Ideally what I'd like is a scheme by which when I log in all the apps I want (even the remote ones) are in my customize settings to start automatically. If I have to provide passwords, it's o.k. Oh, I'm running VMS 5.3-1 and Ultrix 4.0... Thanks in advance, Dick Joltes joltes@husc9.harvard.edu Mgr. of Hardware & Facilities Harvard University Science Center
krs0@GTE.COM (Rod Stephens) (09/28/90)
In article <4274@husc6.harvard.edu> joltes@husc9.harvard.edu (Richard Joltes) writes: > ... the standard method is to create a DECterm, set >host to the target node, and do > >$ set display/create/node=xxxxxx >$ <invoke application> > >which seems a pain. Has anyone worked up an easier way (i.e. local .exe or >comfile that will establish the session and start up the application)? > >Ultrix is trickier. I access this system using a Multinet TELNET session, and >the only method I've found in TFM uses UCX. Anyone done this successfully >using Multinet (or DECnet/Ultrix)? This may not be exactly what you need but maybe it will be useful to someone. To go from Ultrix to Ultrix (on TCP/IP) I have the following line in my .login: alias rterm "xhost +\!*;rsh \!* 'setenv DISPLAY `hostname`:0.0;dxterm & ' " If I'm logged on to radagast and I want to start a window on frodo I type: % rterm frodo which expands to: xhost +frodo;rsh frodo 'setenv DISPLAY radagast:0.0;dxterm & ' which does the trick. Of course my .rhosts file on frodo must have a line that says: radagast rod so the rsh command will work. Understanding what processes are started is a little tricky. The rsh command does not return even after the dxterm is started on the remote machine. I usually just control-C after I see the message indicating that the dxterm has started. You could also put the rterm command in the background (% rterm frodo &) and then this command will show up as stopped when you do a "jobs" command (thought the dxterm is just fine). Further experiments are left to the reader ;-) One last trick: you can give dxterm a command to execute when it starts as in: % dxterm -e my_application This should let you start lots of stuff automatically. +---------------------------------------------------------------+ | Rod Stephens | "Haven't I told you not to play | | GTE Laboratories, Inc | with my super-weapons? You might | | (617)466-4182 | devastate yourself!" | | krs0@gte.com | | +---------------------------------------------------------------+
allebrandi@inland.com (Tom Allebrandi) (10/02/90)
In article <4274@husc6.harvard.edu>, joltes@husc9.harvard.edu (Richard Joltes) writes: > A question for the DECwindows gurus out there... > I run most of my applications on my trusty(?) VS2000 but have access to some > more powerful (i.e. 8550 running VMS and 5400 running Ultrix) servers. So I'd > like to start remote sessions on those nodes and pop the displays back to my > workstation. VMS is easy, but the standard method is to create a DECterm, set > host to the target node, and do > $ set display/create/node=xxxxxx > $ <invoke application> > which seems a pain. Has anyone worked up an easier way (i.e. local .exe or > comfile that will establish the session and start up the application)? >.... Here is what we do. Put this somewhere and define it as a DECnet object on each node where you wish to execute an application. You will need to customize this for the applications in use at your site. --- Tom Tom Allebrandi | Vice-char and mail guru, VMSnet WG, DECUS VAX SIG Inland Steel Research Labs | Internet: allebrandi@inland.com East Chicago, IN | UUCP: ...!uunet!inland!allebrandi 219 399 6306 | DECUServe: allebrandi BIX: ta2 $! DW_LAUNCH.COM $! $! Launch remote DECwindows/X client applications. $! $! If this procedure is invoked in an INTERACTIVE process: $! P1 = The name of an application $! P2 = The node to execute the application on $! P3 = The DECwindows client node (default: current node) $! $! eg: "@DW_LAUNCH DECTERM EAGLE" to create a DECterm on EAGLE using $! the current workstation display. $! $! If this procedure is invoked in a BATCH process: $! P1 = The name of an application $! P2 = The DECwindows client node $! $! eg: "SUBMIT DW_LAUNCH/QUEUE=EAGLE$BATCH/PARAM=(DECTERM,KRAZ) to $! create a DECterm on EAGLE using the display on node KRAZ. $! $! If this procedure is invoked in a NETWORK process: $! There are no parameters. The application name and DECwindows $! client node name are sent via DECnet to the process. $! $! When used interactively, the interactive side invokes this procedure $! as a DECnet task. It sends over one message which contains the name $! of the application and the node for the display. $! $ applications = "/DECTERM/NOTES/S2020/" $ $ if ((f$mode() .eqs. "NETWORK") .or. (f$mode() .eqs. "BATCH")) then - goto launchit $ $ if (p1 .eqs. "") then inquire/nopun p1 "Application? " $ if (p2 .eqs. "") then inquire/nopun p2 "Node? " $ if (p3 .eqs. "") then p3 = f$getsyi("NODENAME") $ $ request = "/" + f$edit(p1,"UPCASE") + "/" $ if (f$locate(request,applications) .eq. f$length(applications)) then exit $ $ open/write/error=oops fyle 'p2'::"0=dw_launch" $ write fyle p1,"|",p3 $ close fyle $oops: $ exit $ $launchit: $ set verify $ if (f$mode() .eqs. "NETWORK") $ then open/read/error=oops fyle sys$net: $ read/error=oops fyle string $ p1 = f$edit(f$element(0,"|",string),"UPCASE") $ p2 = f$edit(f$element(1,"|",string),"UPCASE") $ endif $ $ request = "/" + p1 + "/" $ if (f$locate(request,applications) .eq. f$length(applications)) then exit $ $ set display/create/node='p2' $ goto 'p1' $ $DECTERM: $ xyzzy = f$getsyi("NODENAME") $ create/terminal/detached/nologged/display='f$trnlnm("SYS$REM_NODE")'0 - /window_attributes=(title="''xyzzy'",icon_name="''xyzzy'") $ stop/id=0 $NOTES: $ notes/interface=decwindows $ stop/id=0 $S2020: $ setup 2020 $ s2020 $ stop/id=0 $!end of file