home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 8 Other / 08-Other.zip / dntst2.zip / INSTALL.CMD < prev    next >
OS/2 REXX Batch file  |  1994-02-15  |  4KB  |  2 lines

  1. /* Optimized using REXXOPT 1.0 by Steven Barcus */;REXXOPT='Y';ARG '(' OPT .;IF OPT=TRACE THEN TRACE IR;'@ECHO OFF';CALL DEF_COLORS;CLS;'PROMPT';SAY INTENSE ON_BLACK;CLS;SAY;PAD=CENTER('DENTIST Installation',80);PAD=LEFT(PAD,POS('D',PAD)-1);SAY PAD||YELLOW"DENTIST "CYAN"Installation";PAD=CENTER('(Data ENTry assISTant)',80);PAD=LEFT(PAD,POS('(',PAD)-1);SAY PAD||WHITE"("YELLOW"D"BLUE"ata "YELLOW"ENT"BLUE"ry ass"YELLOW"IST"BLUE"ant"WHITE")";PAD=CENTER('Copyright 1993 by Steven Barcus',80);PAD=LEFT(PAD,POS('C',PAD)-1);SAY PAD||GREEN'Copyright 1993 by Steven Barcus';CURDIR=DIRECTORY();IF RIGHT(CURDIR,1)<>'\' THEN CURDIR=CURDIR'\';CURDRV=LEFT(CURDIR,2);IF CHARS(CURDIR'DENTIST.VER')=0 THEN DO;SAY RED"******************************************************************";SAY RED"* The installation files are not in the current drive/directory. *";SAY RED"*  Make the drive containing the installation disk the active    *";SAY RED"* drive by issuing the command 'A:' (or 'B:') and then restart   *";SAY RED"* the installation.                                              *";SAY RED"******************************************************************";SIGNAL EXITPGM;END;ELSE rc=LINEOUT(CURDIR'DENTIST.VER');VERSION=LINEIN(CURDIR'DENTIST.VER');rc=LINEOUT(CURDIR'DENTIST.VER');IF VERSION='' THEN DO;SAY RED"** Error reading version number **";SIGNAL EXITPGM;END;SAY;SAY GREEN"Version   : "WHITE||VERSION;SAY;SAY CYAN"Please wait while I setup for the installation program.";c=CHAROUT(,CYAN"This may take several minutes"YELLOW);bootdrive=Substr(Value('PATH',,'OS2ENVIRONMENT'),Pos('\OS2\SYSTEM',Value('PATH',,'OS2ENVIRONMENT'))-2,2);config=bootdrive'\CONFIG.SYS';rc=CHAROUT(,".");RXU=LOAD_REXXUTIL();IF RXU=0 THEN DO;LIBS=0;DO WHILE LINES(config)<>0;IP=LINEIN(config);IPU=TRANSLATE(IP);IF POS('LIBPATH=',IPU)=0 THEN ITERATE;LIBS=LIBS+1;LIB.LIBS=IP;END;LIB.0=LIBS;rc=LINEOUT(config);SIGNAL PARSE_LIB;END;rc=SysFileSearch('LIBPATH=',config,'LIB.');IF rc<>0 | LIB.0=0 THEN DO;SAY;SAY RED"Error ("rc") locating 'LIBPATH=' statement in '"config"'.";SIGNAL EXITPGM;END;PARSE_LIB:;rc=CHAROUT(,".");LIBSUB='';ALTSUB='';DO N=1 TO LIB.0;LIB.N=STRIP(LIB.N,B);IF LEFT(LIB.N,1)='*' THEN ITERATE;PARSE VAR LIB.N 'LIBPATH=' MORE;DO WHILE MORE<>'';PARSE VAR MORE LIBPATH ';' MORE;IF POS('OS2\DLL',LIBPATH)<>0 THEN DO;LIBSUB=LIBPATH;SIGNAL HAVELIB;END;IF LIBPATH<>'.' & ALTSUB='' THEN ALTSUB=LIBPATH;END;END;HAVELIB:;rc=CHAROUT(,".");IF LIBSUB='' & ALTSUB='' THEN DO;SAY;SAY RED"Unable to parsing a valid 'LIBPATH=' subdirectory.";SIGNAL EXITPGM;END;IF LIBSUB='' THEN LIBSUB=ALTSUB;cc=LINES(LIBSUB'\VROBJ.DLL');rc=LINEOUT(LIBSUB'\VROBJ.DLL');IF cc<>0 THEN SIGNAL COPIED1;rc=CHAROUT(,".");'COPY 'CURDIR'VROBJ.DLL 'LIBSUB'\*.*';IF CHARS(LIBSUB'\VROBJ.DLL')=0 THEN DO;SAY RED"** 'VROBJ.DLL' Copy Failed **";SIGNAL EXITPGM;END;COPIED1:;rc=CHAROUT(,".");cc=LINES(LIBSUB'\REXXUTIL.DLL');rc=LINEOUT(LIBSUB'\REXXUTIL.DLL');IF cc=0 THEN DO;'COPY 'CURDIR'REXXUTIL.DL$ 'LIBSUB'\*.DLL';IF CHARS(LIBSUB'\REXXUTIL.DLL')=0 THEN DO;SAY RED"** 'REXXUTIL.DLL' Copy Failed **";SIGNAL EXITPGM;END;END;rc=CHAROUT(,".");DENTINST;EXITPGM:;SAY NORMAL;Exit 0;LOAD_REXXUTIL:;IF RXFUNCQUERY("SysLoadFuncs") THEN;rc=RxFuncAdd("SysLoadFuncs","REXXUTIL","SysLoadFuncs");SIGNAL ON SYNTAX NAME LOAD_NG;rc=SysLoadFuncs();SIGNAL OFF SYNTAX;RETURN 1;LOAD_NG:;SIGNAL OFF SYNTAX;RETURN 0;DEF_COLORS:;BLACK='1B'x'[30m '||'1B'x'[1D';RED='1B'x'[31m '||'1B'x'[1D';GREEN='1B'x'[32m '||'1B'x'[1D';YELLOW='1B'x'[33m '||'1B'x'[1D';BLUE='1B'x'[34m '||'1B'x'[1D';MAGENTA='1B'x'[35m '||'1B'x'[1D';CYAN='1B'x'[36m '||'1B'x'[1D';WHITE='1B'x'[37m '||'1B'x'[1D';ON_BLACK='1B'x'[40m '||'1B'x'[1D';ON_RED='1B'x'[41m '||'1B'x'[1D';ON_GREEN='1B'x'[42m '||'1B'x'[1D';ON_YELLOW='1B'x'[43m '||'1B'x'[1D';ON_BLUE='1B'x'[44m '||'1B'x'[1D';ON_MAGENTA='1B'x'[45m '||'1B'x'[1D';ON_CYAN='1B'x'[46m '||'1B'x'[1D';ON_WHITE='1B'x'[47m '||'1B'x'[1D';NORMAL='1B'x'[0m '||'1B'x'[1D';INTENSE='1B'x'[1m '||'1B'x'[1D';BLINK='1B'x'[5m '||'1B'x'[1D';HIDDEN='1B'x'[8m '||'1B'x'[1D';RETURN 0
  2.