home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: Science / Science.zip / m2v114od.zip / Mathe2 / InstM2.cmd < prev    next >
OS/2 REXX Batch file  |  1997-06-20  |  4KB  |  121 lines

  1. /* Installprogramm zur Vollversion von Mathe/2 V1.1 und höher */
  2. call RxFuncAdd 'SysLoadFuncs','RexxUtil','SysLoadFuncs'
  3. call SysLoadFuncs
  4.  
  5. call SysCls
  6. Say
  7. Say
  8. Say '+-----------------------+'
  9. Say '| Installationsprogramm |'
  10. Say '|   für MATHE/2 V1.x    |'
  11. Say '+-----------------------+'
  12. Say
  13. Say 'quit für Ende bei jeder Pfad-Eingabe möglich !!!'
  14. Say
  15. d='c:\Mathe2'
  16. s='a:\Mathe2'
  17. weiter=''
  18. /* Zielpad eingeben */
  19. Say 'Bitte geben Sie das ZIELVERZEICHNIS an,'
  20. Say 'in dem Mathe2 installiert werden soll.'
  21. Say 'Voreinstellung mit Return bestätigen oder'
  22. Say 'neuen Pad eingeben: 'd
  23. Parse Pull dest
  24. if dest='' then dest=d
  25. if dest='quit' then signal progende
  26. /* Quellpad eingeben */
  27. Say
  28. Say 'Bitte geben Sie das QUELLVERZEICHNIS an,'
  29. Say 'in dem sich die Mathe/2 Dateien befinden.'
  30. do until weiter<>''
  31.         Say 'Voreinstellung mit Return bestätigen oder'
  32.         Say 'neuen Pad eingeben: 's
  33.         Parse Pull source
  34.         if source='' then source=s
  35.         if source='quit' then signal progende
  36.         verz=source||'\*.exe'
  37.         call sysfiletree verz,'datei',o
  38.         do i=1 to datei.0 /* mathe2.exe in datei. suchen */
  39.            if (source'\MATHE2.EXE'=datei.i) then weiter='TRUE'
  40.         end /* do */
  41.         if (weiter='') then do
  42.            say
  43.            Say 'Konnte Mathe/2- Datei nicht finden!'
  44.            Say 'Bitte neuen Pfad eingeben!'
  45.            source=s
  46.         end  /* Do */
  47. end /* do until */
  48. rc=sysmkdir(dest)
  49. select
  50.    when rc=0 then say "Verzeichnis "dest" erfolgreich erstellt!"
  51.    when rc=2 then do
  52.         say "Datei nicht gefunden!"
  53.         signal progende
  54.    end  /* Do */
  55.    when rc=3 then do
  56.         say "Pfad nicht gefunden!"
  57.         signal progende
  58.    end  /* Do */
  59.    when rc=5 then do
  60.         say "Zugriff verweigert! Eventuell existiert das Verzeichnis schon!"
  61.         Say "Sollen die Dateien trotzdem kopiert werden (J/N)?"
  62.         pull jn
  63.         if (jn<>'j') & (jn<>'J') then signal progende
  64.    end  /* Do */
  65.    when rc=26 then do
  66.         say "Kein Dos Datenträger!"
  67.         signal progende
  68.    end
  69.    when rc=87 then do
  70.         say"Ungüliger Parameter!"
  71.         signal progende
  72.    end  /* Do */
  73.    when rc=108 then do
  74.         say"Laufwerk gesperrt!"
  75.         signal progende
  76.    end
  77.    when rc=206 then do
  78.         say "Dateiname oder Dateierweiterung zu lang!"
  79.         signal progende
  80.    end  /* Do */
  81. otherwise signal progende
  82. end  /* select */
  83. say "Kopiere nun die Dateien!"
  84. 'xcopy 'source dest' /s' 
  85. say
  86. say "Wollen Sie eine Referenz von Mathe/2 auf "
  87. say "ihrer Arbeitsoberfläche erstellen? (J/N)"
  88. pull refjn
  89. if (refjn='j') | (refjn='J') then do
  90.    ename="EXENAME="dest||"\Mathe2.exe"
  91.    rc=syscreateobject("WPPROGRAM","Mathe2","<WP_DESKTOP>",ename,"fail")
  92.    if rc=1 then say "Referenz wurde erfolgreich erstellt!"
  93.    else say "Konnte Referenz nicht erstellen!"
  94. end  /* Do */
  95. else nop
  96. dlw=left(dest,2)||'\os2\dll'
  97. say "Wollen Sie die Bibliotheken VROBJ.dll und RXMATHFN.dll"
  98. say "in den Ordner "dlw" verschieben? (J/N)"
  99. pull dlljn
  100. if (dlljn='j') | (dlljn='J') then do
  101.     'cd 'dest
  102.     'copy vrobj.dll 'dlw
  103.     'del vrobj.dll'
  104.     'copy rxmathfn.dll 'dlw
  105.     'del rxmathfn.dll'
  106.     say 'Dateien verschoben!'
  107. end  /* Do */
  108. else nop
  109. /* schreibe instlog.m2  dür deinstallation wichtig */
  110. say "Schreibe instlog.m2 in das Verzeichnis:"dest" !"
  111. say "Diese Datei enthält Informationen für das Deinstallationsprogramm!"
  112. datname="instlog.m2"
  113.  
  114. call directory dest
  115. call lineout datname,dest,1
  116. call lineout datname,dlljn
  117. call lineout datname,dlw
  118.  
  119. progende:
  120. EXIT /* InstM2.cmd */
  121.