REXX Tips & Tricks, Version 2.80


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


Changing the Lockup page entry



You cannot change the Lockup page entry using <SysSetObjectData in WARP 3. 
The book OS/2 2.11 Power Techniques contains some information about 
changing the lockup feature using the INI file entry (Partial/Full Screen 
Lockup, Setting Automatic Lockup and the Timeout Value, Auto Dim/No 
AutoDim, Reset the password, change the lockup bitmap, change the lockup 
bitmap display options). 
In WARP 4 you can change some of the Lockup page entries and activate the 
Lockup using <SysSetObjectData (see Setup strings for WPDesktop objects 
and also Activating Lockup now) 
Another method to init the lockup page entries with default values (useful 
for setting default values, but see also Set or get the WPS lockup 
password ): 
Change the lockup page entries of an installed OS/2 system to meet your 
needs. Then call the REXX program below to create a REXX cmd to copy the 
lockup options to another machine: 

 
/*                                                                    */
/* sample program to create a CMD to copy the lockup options of this  */
/* machine to other machines.                                         */
/*                                                                    */
/* This program creates a program called "SETLKUP.CMD" in the         */
/* current directory. Execute this program on other machines to copy  */
/* the lockup options of this machine.                                */
/*                                                                    */
/* Note that this program only works on OS/2 WARP. To work under      */
/* OS/2 versions prior to WARP you must change the application name   */
/* PM_Lockup to 'Lock Up Workplace' (with the blanks but without the  */
/* quotes) and the key name LockupOptions to 'Lockup_options3' (also  */
/* without the quotes).                                               */
/*                                                                    */
/* To use the program under 2.11 and WARP you may use the REXXUTIL    */
/* function <SysOS2Ver to distinguish between the versions --         */
/* but please note that I did NOT test if it is possible to use the   */
/* same values for different OS/2 versions!                           */
/*                                                                    */
/* (c) 1996 Bernd Schemmer, Germany, EMail: 100104.613@compuserve.com */
/*                                                                    */

                    /* load the necessary REXXUTIL function(s)        */
  call rxFuncAdd "SysIni", "REXXUTIL", "SysIni"

                    /* name of the REXX cmd to copy the options       */
  outFile = "SETLKUP.CMD"

                    /* carriage return and linefeed values            */
  crLF    = "0D0A"x

                    /* show a little message                          */
  call LineOut , "Creating the file"
  call LineOut , "  " || outFile
  call CharOut , "to copy the lockup options of this machine to other",
                 "machines  ... "

                   /* delete an existing target file                  */
  "@del " outFile "2>NUl 1>NUL"

                    /* get the current lockup options                 */
  curLockupOptions = SysIni( "USER", "PM_Lockup", "LockupOptions" )

                    /* create the REXX cmd to copy this options to    */
                    /* another machine                                */
  call LineOut outFile ,,
    "/* REXX cmd to set the lockup options */"             || crLF || ,
    "/* created on " || date() || " at " || time() || " */"|| crLF || ,
    ""                                                     || crLF || ,
    "  call rxFuncAdd 'SysIni', 'REXXUTIL', 'SysIni'"      || crLF || ,
    ""                                                     || crLF || ,
    "  call SysIni 'USER', 'PM_Lockup', 'LockupOptions',," || crLF || ,
    "            '" || c2x( curLockupOptions ) || "'x"     || crLF || ,
    ""                                                     || crLF || ,
    "  '@setboot /IBD:C:'"                                 || crLF || ,
    ""

  call lineOut , " done."

Note that the reboot is necessary to make the changes active!   

Inf-HTML End Run - Successful