home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: InfoMgt / InfoMgt.zip / party14.zip / INSTALL.CMD < prev    next >
OS/2 REXX Batch file  |  1996-08-17  |  4KB  |  155 lines

  1. /* Party/2 1.4 Installations-Script */
  2.  
  3.   Call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'    
  4.   Call SysLoadFuncs
  5.  
  6.   Parse Arg InstallDir       
  7.   Signal On Halt Name ErrorHandler
  8.  
  9.   Call SysCls
  10.   Say
  11.   Say
  12.   Say
  13.   Say " Party/2 1.4 Installation "
  14.   Say " ------------------------ "
  15.  
  16.   If InstallDir=" " Then Do                 
  17.     Say
  18.     Say " Bitte geben Sie das Verzeichnis in das Sie Party/2"
  19.     Say " installieren möchten an, oder drücken Sie <Enter>"
  20.     Say " um in das aktuelle Verzeichnis zu installieren, oder"
  21.     Say " drücken Sie 'Q'<Enter> um abzubrechen."
  22.     Say
  23.     Say " Beispiel:       C:\OS2\PARTY<Enter>"
  24.     Say
  25.     Say " Eingabe: "
  26.  
  27.     Parse Value SysCurPos() with Row Col
  28.     Col=Col+17
  29.     Row=Row-1
  30.     Call SysCurPos Row, Col
  31.     Pull InstallDir
  32.     If (InstallDir="Q")|(InstallDir="q") Then Exit
  33.   End
  34.  
  35.   Say                        
  36.  
  37.   CurrentDir = directory()            
  38.   
  39.   If (InstallDir=" ") Then InstallDir=CurrentDir
  40.  
  41.    If (CurrentDir\=directory(InstallDir)) Then Do
  42.     Command = '@CD 'directory(CurrentDir)    
  43.     Command
  44.  
  45.     Call SysFileTree InstallDir, FileDirectory, 'D'
  46.     If FileDirectory.0='0' Then Do        
  47.       Say " Das Installationsverzeichnis "InstallDir" wird erstellt . . ."
  48.       rc=SysMkDir(InstallDir)
  49.       If rc\=0 Then Do
  50.     Say
  51.     Say " Schade. Das Installationsverzeichnis konnte nicht er-"
  52.     Say " stellt werden. Haben Sie einen unzulässigen Pfad angegeben?"
  53.     Say " Bitte starten Sie das Installations-Script erneut."
  54.         Say 
  55.     Exit
  56.       End
  57.     End
  58.  
  59.     Say " Die Dateien werden nach "InstallDir" kopiert. . ."                      /* Now copy files */
  60.     Call FileCopy 'INSTALL.CMD', InstallDir
  61.     Call FileCopy 'PARTY.EXE', InstallDir
  62.     Call FileCopy 'PARTY.HLP', InstallDir
  63.     Call FileCopy 'PARTY.BMP', InstallDir
  64.     Call FileCopy 'PARTY.WAV', InstallDir
  65.     Call FileCopy 'PARTY14.DAT', InstallDir
  66.     Call FileCopy 'History.txt', InstallDir
  67.     Call FileCopy 'LiesMich', InstallDir
  68.     Call FileCopy '19xx.cmd', InstallDir
  69.    END
  70.  
  71.    Say " Das Online-Handbuch wird aus der Hilfe-Datei erstellt, bitte etwas Geduld... "
  72.   
  73.    q = "Party.hlp"
  74.  
  75.    LastChar = substr(InstallDir,length(InstallDir),1)
  76.  
  77.    If LastChar = "\" Then z = InstallDir"Party.inf"
  78.    Else  z = InstallDir"\Party.inf"
  79.  
  80.    s = SAY Stream("Party.hlp", "c", "open read")   
  81.  
  82.    If LastChar = "\" Then sw = SAY Stream(InstallDir"Party.inf", "c", "open write")
  83.    Else  sw = SAY Stream(InstallDir"\Party.inf", "c", "open write")
  84.  
  85.  
  86.    Zeichen = Charin(q)
  87.    CALL Charout z, Zeichen
  88.    Zeichen = Charin(q)
  89.    CALL Charout z, Zeichen
  90.    Zeichen = Charin(q)
  91.    CALL Charout z, Zeichen
  92.    Zeichen = Charin(q)
  93.    CALL Charout z,""            /* dies ist das einzige unterschiedliche Byte von HLP und INF */
  94.                                  /* manchmal könnte man meinen bei IBM arbeiten nur Idioten    */
  95.    DO WHILE Chars("Party.hlp") > 0                     
  96.     Zeichen = Charin(q)
  97.     CALL Charout z, Zeichen  
  98.    END
  99.    s = SAY Stream("Party.hlp", "c", "close")  
  100.  
  101.    If LastChar = "\" Then s = SAY Stream(InstallDir"Party.inf", "c", "close")
  102.    Else  s = SAY Stream(InstallDir"\Party.inf", "c", "close")
  103.    
  104.  
  105.  
  106.   Say " Das Programmobjekt wird erstellt . . ."                                       
  107.  
  108.   LastChar = substr(InstallDir,length(InstallDir),1)
  109.  
  110.   If LastChar = "\" Then SetupString="EXENAME="InstallDir"PARTY.EXE;STARTUPDIR="InstallDir
  111.   Else SetupString="EXENAME="InstallDir"\PARTY.EXE;STARTUPDIR="InstallDir
  112.  
  113.   rc=SysCreateObject("WPProgram","Party/2 1.4","<WP_DESKTOP>",SetupString,UPDATE)
  114.   If rc=0 Then Do
  115.     Say
  116.     Say " Das Programmobjekt konnte nicht erstellt werden." 
  117.     Exit  
  118.   End
  119.  
  120.   Say " Die LiesMich - Datei wird angezeigt."
  121.  
  122.   Command='@E LiesMich'        
  123.   Command
  124.  
  125.   Say
  126.   Say " Party/2 1.4 wurde erfolgreich installiert."
  127.  
  128.   Exit
  129.  
  130.  
  131. /******* FileCopy procedure */
  132.  
  133.   FileCopy: Arg FileName, Destination
  134.     
  135.     Command='@Copy 'FileName' 'Destination' >NUL'
  136.     Command
  137.     If rc\=0 Then Do            
  138.       Say
  139.       Say " Fehler beim Kopieren der Datei."
  140.       Say " Möglicherweise ist das Ziellaufwerk schreibgeschützt"
  141.       Say " oder die Datei ist nicht vorhanden."
  142.       Exit
  143.     End
  144.     Return
  145.  
  146.  
  147. /******* ErrorHandler procedure */
  148.  
  149.   ErrorHandler:
  150.  
  151.     Call SysCls
  152.     Say " Unbekannter Fehler! Die Installation wird abgebrochen."
  153.   Exit
  154.  
  155.