REXX Tips & Tricks, Version 2.80


Inf-HTML [About][Toc][Index] 0.9b (c) 1995 Peter Childs


Start a program with specific settings



Create a temporary object to start a program (DOS, Windows, or OS/2) with 
specific settings. Example: 

 
/* example code to start the Program Manager as seamless windows      */
/* program in a common session                                        */

  call rxFuncAdd 'SysLoadFuncs', 'REXXUTIL', 'SysLoadFuncs'
  call SysLoadFuncs

                        /* ID for the temporary object                */
  objectID = '<MY_TEMP_OBJECT>'

  title = 'Program^Manager'
  class = 'WPProgram'
  location = '<WP_NOWHERE>'
  setup = 'EXENAME=F:\WINDOWS\PROGMAN.EXE;' || ,
          'PROGTYPE=PROG_31_ENHSEAMLESSCOMMON;' || ,
          'OBJECTID=' || objectID || ';'

                        /* create the temporary object                */
  say SysCreateObject( class, title, location, setup )

                        /* open the temporary object                  */
  say SysSetObjectData( objectID, 'OPEN=DEFAULT;' )

                        /* bring it into the foreground               */
  say SysSetObjectData( objectID, 'OPEN=DEFAULT;' )

                        /* destroy the temporary object               */
  say SysDestroyObject( objectID )
exit

This method is possible in all OS/2 versions. Beginning with OS/2 WARP 4 
you can use another method to start a DOS or Windows program with specific 
settings: 
Just set environment variables in the format DOSSetting.{dossetting} and 
issue a start command. {dossetting} can be any setup string that can be 
used in the setup string used to create or change a WPS Object for DOS 
sessions. 
For example, to start a DOS session with a specific AUTOEXEC.BAT file use 
the following code: 

 
REM *** OS/2 Batch (works also in REXX programs)
REM

REM The DOS sessions should use the file C:\TEST.BAT
REM as AUTOEXEC.BAT.
REM The name of the environment variables seems not to be case
REM sensitive.
REM
set DOSSetting.DOS_AUTOEXEC=C:\TEST.BAT

REM Now use the start command to start the DOS session
REM
start /dos


  

Inf-HTML End Run - Successful