home *** CD-ROM | disk | FTP | other *** search
/ TopWare Tools / TOOLS.iso / tools / top1635 / install.bat < prev    next >
Encoding:
DOS Batch File  |  1993-10-01  |  14.8 KB  |  464 lines

  1. @ECHO OFF
  2. REM -----------------------------------------------
  3. REM INSTALL V2.07 - Installierungs-Datei für MDEBUG
  4. REM (c) 1993 Bernd Schemmer
  5. REM -----------------------------------------------
  6. REM Für 4DOS ab Version 3 auf BTM umschalten!
  7. IF %@eval[2+2] == 4 LOADBTM ON
  8. BREAK ON
  9. CLS
  10. SET VERSION=V2.07
  11. IF NOT "%VERSION%" == "V2.07" GOTO EnvError
  12. ECHO. INSTALL - Entpacken der Archive von MDEBUG %VERSION%
  13. ECHO.
  14. REM ----- Testen, ob die Datei von der richtigen Diskette gestartet wurde
  15. IF EXIST START.DOC GOTO DiskOk
  16. ECHO. ***** INSTALL fataler Fehler: Falsche Start-Diskette benutzt!
  17. ECHO.
  18. ECHO. ***** INSTALL.BAT kann nur von der Original-Diskette der Shareware-
  19. ECHO. ***** Version oder der ERSTEN (und evtl. einzigen) Diskette der 
  20. ECHO. ***** Vollversion (bzw. einer Kopie einer dieser beiden Disketten) 
  21. ECHO. ***** gestartet werden!
  22. GOTO ENDE0
  23. :DiskOk
  24. ECHO. Initialisiere die Variablen. Bitte warten, das dauert etwas ...
  25. ECHO. [evtl. Fehlermeldungen wie 'Kein Platz mehr im Umgebungsbereich' können
  26. ECHO. ignoriert werden, da sie von INSTALL behandelt werden!]
  27. ECHO.
  28. REM ----- Environment-Variablen vorbelegen
  29. SET  RETADR=xxxxxxxxxx
  30. SET RETADR1=xxxxxxxxxx
  31. SET    FILE=xxxxxxxxxx
  32. SET     EXT=xxxxxxxxxx
  33. SET IGNOREERROR=xxx
  34. SET art=SHARE
  35. SET Z_LW=C:
  36. SET Q_LW=A:
  37. SET MKDIRS=Y
  38. REM ----- Auswerten der Parameter
  39. IF NOT %5. == . GOTO Switch1Error
  40. IF %1. == ?.  GOTO HELP
  41. IF %1. == /?. GOTO HELP
  42. IF %1. == -?. GOTO HELP
  43. IF NOT %1. == . SET Z_LW=%1
  44. IF NOT %2. == . SET Q_LW=%2
  45. IF NOT %3. == . SET MKDIRS=%3
  46. REM ----- Testen, ob die Environment-Variablen erstellt werden konnten
  47. SET TESTFILE=***TESTFILE***
  48. IF NOT %TESTFILE%. == ***TESTFILE***. GOTO EnvError
  49.  
  50. REM ----- Parameter überprüfen
  51. IF %4. == X. GOTO LwOK2
  52. IF %4. == x. GOTO LwOK2
  53. IF NOT %4. == . GOTO Switch1Error
  54.  
  55. IF %Z_LW%. == C:. GOTO LwOK1
  56. IF %Z_LW%. == c:. GOTO LwOK1
  57. IF %Z_LW%. == D:. GOTO LwOK1
  58. IF %Z_LW%. == d:. GOTO LwOK1
  59. GOTO TargetError
  60. :LwOK1
  61. IF %Q_LW%. == A:. GOTO LwOK2
  62. IF %Q_LW%. == a:. GOTO LwOK2
  63. IF %Q_LW%. == B:. GOTO LwOK2
  64. IF %Q_LW%. == b:. GOTO LwOK2
  65. GOTO SourceError
  66. :LwOK2
  67. IF %MKDIRS%. == Y. GOTO SwitchOK
  68. IF %MKDIRS%. == y. GOTO SwitchOK
  69. IF %MKDIRS%. == N. GOTO SwitchOK
  70. IF NOT %MKDIRS%. == n. GOTO SwitchError
  71. :SwitchOK
  72. CLS
  73. ECHO. ┌─────────────────────────────────────────────────────────────────────┐
  74. ECHO. │ INSTALL.BAT - Batchdatei zum Entpacken der Archive von MDEBUG %VERSION% │
  75. ECHO. └─────────────────────────────────────────────────────────────────────┘
  76. ECHO.
  77. IF %MKDIRS%. == n. GOTO S1
  78. IF %MKDIRS%. == N. GOTO S1
  79. ECHO. INSTALL erstellt im aktuellen Directory von %Z_LW% folgende Directorys:
  80. ECHO.
  81. ECHO. akt. Directory
  82. ECHO. ─────────────┐
  83. ECHO.              │
  84. ECHO.              ├──\MDEBUG  Inhalt: Das Hauptprogramm und die Utils
  85. ECHO.              │
  86. ECHO.              ├──\SOURCE  Inhalt: Die Quelltexte der Utils
  87. ECHO.              │
  88. ECHO.              └──\DOC     Inhalt: Die Dokumentation zu MDEBUG %VERSION%
  89. GOTO S2
  90. :S1
  91. ECHO. Die Directorys MDEBUG, SOURCE und DOC existieren bereits im aktuellen
  92. ECHO. Directory des Laufwerks %Z_LW%.
  93. :S2
  94. ECHO.
  95. ECHO.                                       ┌────┐                  ┌────┐
  96. ECHO. Installiere MDEBUG %VERSION% vom Laufwerk │ %Q_LW% │ aus ins Laufwerk │ %Z_LW% │.
  97. ECHO.                                       └────┘                  └────┘
  98. ECHO.
  99. ECHO. Das aktuelle Directory von %Z_LW% ist:
  100. CD %Z_LW%
  101. ECHO.
  102. ECHO. Soll ich fortfahren [CTRL-C für Abbruch, sonst: fortfahren]?
  103. ECHO. (INSTALL ? [RETURN] für Hilfe)
  104. PAUSE >NUL
  105. CLS
  106. ECHO. Installiere MDEBUG %VERSION% im aktuellen Directory des Laufwerks %Z_LW% ...
  107. ECHO.
  108.  
  109. %Z_LW%
  110. IF %MKDIRS%. == N. GOTO DirsExist
  111. IF %MKDIRS%. == n. GOTO DirsExist
  112. ECHO.
  113. ECHO. ***** Erstelle die Directorys MDEBUG, SOURCE und DOC ...
  114. MD MDEBUG >NUL
  115. MD SOURCE >NUL
  116. MD DOC >NUL
  117. :DirsExist
  118.  
  119. REM ----- Testen, ob die Directorys existieren
  120. IF NOT EXIST %Z_LW%DOC\CON    GOTO DirectoryError
  121. IF NOT EXIST %Z_LW%SOURCE\CON GOTO DirectoryError
  122. IF NOT EXIST %Z_LW%MDEBUG\CON GOTO DirectoryError
  123.  
  124. ECHO. ***** Installiere MDEBUG %VERSION% ...
  125. copy %Q_LW%*.doc doc\*.* >NUL
  126. IF EXIST %Q_LW%show.* copy %Q_LW%show.* doc\*.* >NUL
  127.  
  128. REM ----- Entpacken des Archivs MDEBUG1.EXE
  129. cd MDEBUG
  130. SET FILE=MDEBUG1
  131. SET TESTFILE=MDDISDRV.COM
  132. SET EXT=.EXE
  133. SET RETADR1=LABEL1
  134. GOTO InstallArchiv
  135. :LABEL1
  136. IF NOT %IGNOREERROR%. == . GOTO ErrorIgnored1
  137. ECHO. ***** Verteile die Dateien auf die Directorys ...
  138. copy *.a86 ..\source\*.* >NUL
  139. copy *.obj ..\source\*.* >NUL
  140. copy testmd.* ..\source\*.* >NUL
  141. del *.a86 >NUL
  142. del *.obj >NUL
  143. del testmd.* >NUL
  144.  
  145. :ErrorIgnored1
  146. REM ----- Entpacken der Dokumentation zu MDEBUG (Teil 1)
  147. cd ..\doc
  148. SET FILE=MDEBUG21
  149. SET TESTFILE=MDEBUG.PRT
  150. SET EXT=.EXE
  151. SET RETADR1=LABEL2
  152. GOTO InstallArchiv
  153. :LABEL2
  154.  
  155. REM ----- Entpacken der Dokumentation (Teil 2)
  156. SET FILE=MDEBUG22
  157. SET TESTFILE=WHATS.NEW
  158. SET EXT=.EXE
  159. SET RETADR1=LABEL3
  160. GOTO InstallArchiv
  161. :LABEL3
  162.  
  163. REM ----- Entpacken der zusätzlichen Utils aus der Vollversion
  164. IF NOT EXIST %Q_LW%MDEBUG.REG GOTO LABEL42
  165. IF EXIST %Q_LW%MDEBUG3.EXE GOTO LABEL41
  166. ECHO. ***** Bitte die Diskette 2 ins Laufwerk %Q_LW% einlegen und
  167. ECHO. ***** eine Taste drücken [CTRL-C für Abbruch] ...
  168. PAUSE >NUL
  169. :LABEL41
  170. SET art=VOLL
  171. cd ..\MDEBUG
  172. SET FILE=MDEBUG3
  173. SET TESTFILE=SETREGNR.EXE
  174. SET EXT=.EXE
  175. SET RETADR1=LABEL4
  176. GOTO InstallArchiv
  177.  
  178. :LABEL4
  179. IF NOT %IGNOREERROR%. == . GOTO LABEL42
  180. ECHO. ***** Verteile die Dateien auf die Directorys ...
  181. copy *.asm  ..\source >NUL
  182. copy *.in?  ..\source >NUL
  183. del *.asm >NUL
  184. del *.in? >NUL
  185. :LABEL42
  186.  
  187. REM ----- Entpacken der Dokumentation zu MDEBUG (Teil 3)
  188. REM
  189. IF NOT EXIST %Q_LW%MDEBUG23.EXE GOTO LABEL5
  190. cd ..\doc
  191. SET FILE=MDEBUG23
  192. SET TESTFILE=HISTORY.DOC
  193. SET EXT=.EXE
  194. SET RETADR1=LABEL5
  195. GOTO InstallArchiv
  196. :LABEL5
  197.  
  198. REM Hilfsvariablen Löschen
  199. SET RETADR=
  200. SET RETADR1=
  201. SET FILE=
  202. SET EXT=
  203. SET Z_LW=
  204. SET Q_LW=
  205. SET MKDIRS=
  206. SET TESTFILE=
  207. cd ..\doc
  208. CLS
  209. ECHO.
  210. ECHO. ================ Installation von MDEBUG beendet =============================
  211. ECHO.
  212. ECHO.    MDEBUG %VERSION% ist nun installiert.
  213. ECHO.
  214. ECHO.    Bitte lesen Sie sich vor der ersten Nutzung von MDEBUG die Dokumentation
  215. ECHO.    im Directory DOC durch!
  216. ECHO.    Vergessen Sie nicht Ihren Drucker vor dem Ausdruck der Dokumentation in
  217. ECHO.    einen Modus mit mindestens 100 Zeichen pro Zeile zu schalten!
  218. ECHO.
  219. IF "%art%" == "SHARE" GOTO LABEL6
  220. ECHO. ------------------- Nur für Besitzer der Vollversion: ------------------------
  221. ECHO.
  222. ECHO.    Beachten Sie bitte, daß Sie das Archiv PD_1.EXE noch manuell über den
  223. ECHO.    Aufruf
  224. ECHO.
  225. ECHO.       PD_1 [RETURN]
  226. ECHO.
  227. ECHO.    entpacken müssen!
  228. ECHO.    Am besten richten Sie auch für dieses Archiv ein eigenes Directory ein.
  229. ECHO.
  230. :LABEL6
  231. ECHO. ==============================================================================
  232. ECHO.
  233. GOTO ENDE
  234.  
  235. REM --------------------------
  236. REM
  237. REM Eingabe: %FILE%       = Name des Archivs
  238. REM          %EXT%        = Extension des Archivs
  239. REM          %RETADR1%    = Label, an dem die Programmausführung nach dem
  240. REM                         Ende der Routine fortgeführt werden soll
  241. REM          %TESTFILE%   = Datei, die nach dem Entpacken vorhanden sein muß
  242. REM
  243. :INSTALLARCHIV
  244. SET RETADR=INSTALLArchiv
  245. IF NOT EXIST %Q_LW%%FILE%%EXT%  GOTO PromptUser1
  246. ECHO.
  247. ECHO. ***** Entpacke das Archiv %FILE%%EXT% ...
  248. SET IgnoreError=
  249. %Q_LW%%FILE%%EXT%
  250. IF ERRORLEVEL == 1 GOTO ArchivERROR
  251. IF NOT EXIST %TESTFILE% GOTO ArchivError
  252. ECHO.
  253. ECHO. ***** %FILE%%EXT% entpackt.
  254. GOTO %RETADR1%
  255.  
  256. REM --------------------------
  257. REM
  258. REM Eingabe: %RETADR1%    = Label, an dem die Programmausführung nach dem
  259. REM                         Ende der Routine fortgeführt werden soll
  260. REM
  261. :ArchivERROR
  262. ECHO.
  263. ECHO. ***** Fehler beim Entpacken des Archivs %Q_LW%%FILE%%EXT% aufgetreten!
  264. ECHO.       (z.B. Disk %Z_LW% ist voll oder es wurde CTRL-C gedrückt)
  265. ECHO.
  266. ECHO. ***** Bitte eine Taste zur Fortsetzung der Installation drücken
  267. ECHO. ***** [CTRL-C für Abbruch] ...
  268. SET IgnoreError=YES
  269. PAUSE >NUL
  270. ECHO. ***** Installation wird fortgesetzt ...
  271. GOTO %RETADR1%
  272.  
  273. REM --------------------------
  274. :EnvError
  275. CLS
  276. ECHO. ***** INSTALL Fehler: Nicht genügend Platz im Umgebungsbereich *****
  277. ECHO. ******                                        (= Environment)  *****
  278. ECHO.
  279. ECHO. Zur Ausführung dieser Datei müssen Sie den Platz im Environment erhöhen.
  280. ECHO. Falls Ihr Kommando-Interpreter der COMMAND.COM ist müssen Sie hierzu in
  281. ECHO. der Datei CONFIG.SYS die Zeile
  282. ECHO.
  283. ECHO.      SHELL=d:\COMMAND.COM /e:nnnnn /p
  284. ECHO.
  285. ECHO. einfügen oder editieren und den Computer neustarten.
  286. ECHO. Hierbei ist 'd:' das Verzeichnis, in dem der COMMAND.COM steht und 
  287. ECHO. 'nnnnn' die Größe des Environments in Byte. (siehe auch DOS-Handbuch)
  288. ECHO.
  289. ECHO. Falls Sie diese Änderung des Systems nicht wünschen, können Sie INSTALL
  290. ECHO. auch folgendermaßen aufrufen:
  291. ECHO.
  292. ECHO.      COMMAND /e:2048 /C install.bat {parameter für install}
  293. ECHO.
  294. IF %COMSPEC%. == . GOTO ENDE
  295. ECHO. Drücken Sie eine Taste zur Ausführung dieser Datei über den Befehl
  296. ECHO.
  297. ECHO.      %COMSPEC% /e:2048  /C install.bat %1 %2 %3 %4 %5
  298. ECHO.
  299. ECHO. oder CTRL-C für Abbruch ...
  300. PAUSE >NUL
  301. ECHO.
  302. ECHO. -----------------------------------------------------------------------
  303. ECHO.
  304. ECHO. ***** Neustart von INSTALL.BAT mit vergrößertem Environment ...
  305. ECHO.
  306. %COMSPEC% /e:2048  /C install.bat %1 %2 %3 %4 %5
  307. GOTO Ende
  308.  
  309. REM --------------------------
  310. :TargetError
  311. ECHO.
  312. ECHO. ***** INSTALL Fehler: Als erster Parameter [Ziellaufwerk] (%1%)
  313. ECHO. *****                 ist nur D: oder C: erlaubt!
  314. ECHO.
  315. ECHO. ***** Verwenden Sie die Form
  316. ECHO.
  317. ECHO.       INSTALL ziellaufwerk quellaufwerk {-│+} X
  318. ECHO.
  319. ECHO  ***** falls Sie ein anderes Laufwerk als C: oder D: als Ziellaufwerk
  320. ECHO. ***** angeben möchten.
  321. GOTO EEnde
  322.  
  323. REM --------------------------
  324. :SourceError
  325. ECHO.
  326. ECHO. ***** INSTALL Fehler: Als zweiter Parameter [Quellaufwerk] (%2%)
  327. ECHO. *****                 ist nur A: oder B: erlaubt!
  328. ECHO.
  329. ECHO. ***** Verwenden Sie die Form
  330. ECHO.
  331. ECHO.       INSTALL ziellaufwerk quellaufwerk {-│+} X
  332. ECHO.
  333. ECHO  ***** falls Sie ein anderes Laufwerk als A: oder B: als Quellaufwerk
  334. ECHO. ***** angeben möchten.
  335. GOTO EEnde
  336.  
  337. REM --------------------------
  338. :SwitchError
  339. ECHO.
  340. ECHO. ***** INSTALL Fehler: Als dritter Parameter (%3) ist nur + [Directorys
  341. ECHO. *****                 erstellen] oder - [Directorys existieren bereits]
  342. ECHO. *****                 erlaubt!
  343. GOTO EEnde
  344.  
  345. REM --------------------------
  346. :Switch1Error
  347. ECHO.
  348. ECHO. ***** INSTALL Fehler: Zuviele Parameter angegeben!
  349. GOTO EEnde
  350.  
  351. REM --------------------------
  352. :DirectoryError
  353. ECHO.
  354. ECHO. ***** INSTALL Fehler: Mindestens ein Ziel-Directory existiert nicht!
  355. ECHO.
  356. ECHO. ***** Verwenden Sie die Form
  357. ECHO.
  358. ECHO.       INSTALL ziellaufwerk quellaufwerk
  359. ECHO.
  360. ECHO. ***** und ignorieren Sie die DOS-Fehlermeldung 'Zugriff abgelehnt' bzw.
  361. ECHO. ***** 'Access denied' 
  362. GOTO EEnde
  363.  
  364. REM --------------------------
  365. REM Unterroutine zur Ausgabe einer Fehlermeldung und zum Lesen einer Taste
  366. REM Eingabe:  %FILE%      = Name des Archivs
  367. REM           %EXT%       = Extension des Archivs
  368. REM           %RETADR%    = Label, an dem die Programmausführung fort-
  369. REM                         geführt werden soll.
  370. REM
  371. :PromptUser1
  372. ECHO.
  373. ECHO. ***** INSTALL - Fehler bei der Installierung von MDEBUG %VERSION% *****
  374. ECHO.
  375. ECHO. ***** Fehler: Kann die Datei %FILE%%EXT% im Laufwerk %Q_LW% nicht finden.
  376. ECHO.
  377. ECHO. ***** Bitte die richtige Diskette ins Laufwerk %Q_LW% einlegen
  378. ECHO. ***** und eine Taste drücken [CTRL-C für Abbruch] ...
  379. PAUSE >NUL
  380. ECHO.
  381. ECHO. ***** Neuer Versuch die Datei %FILE%%EXT% zu finden ...
  382. GOTO %RETADR%
  383.  
  384. REM --------------------------
  385. REM Programmteil zur Ausgabe der Aufruf-Syntax
  386. :HELP
  387. CLS
  388. ECHO. ┌─────────────────────────────────────────────────────────────────────┐
  389. ECHO. │ INSTALL.BAT - Batchdatei zum Entpacken der Archive von MDEBUG %VERSION% │
  390. ECHO. └─────────────────────────────────────────────────────────────────────┘
  391. ECHO.
  392. ECHO. Aufruf:  INSTALL {ziellaufwerk} {quellaufwerk} {Y ODER N} {X}
  393. ECHO.
  394. ECHO.          mit: Ziellaufwerk  = Laufwerk, auf dem die Dateien entpackt
  395. ECHO.                               werden sollen (Voreinstellung: %Z_LW%,
  396. ECHO.                               mögliche Angaben: C: oder D:)
  397. ECHO.                Quellaufwerk = Laufwerk, in dem die Archive von MDEBUG
  398. ECHO.                               sind (Voreinstellung: %Q_LW%,
  399. ECHO.                               mögliche Angaben: A: oder B:)
  400. ECHO.               N             = Directorys nicht erstellen, da sie schon
  401. ECHO.                               vorhanden sind.
  402. ECHO.        ODER   Y             = Directorys erstellen, da sie noch nicht
  403. ECHO.                               vorhanden sind. (Voreinstellung: %MKDIRS%)
  404. ECHO.                               (INSTALL verteilt die Dateien auf mehrere
  405. ECHO.                                Subdirectorys im Ziellaufwerk)
  406. ECHO.               X             = Ziel- und Quellaufwerk nicht überprüfen,
  407. ECHO.                               d.h. es sind beliebige Angaben für das
  408. ECHO.                               Ziel- und das Quellaufwerk möglich.
  409. ECHO.
  410. ECHO. ***** Bitte eine Taste zur Ausgabe der Beispiele drücken [CTRL-C für Abbruch]
  411. PAUSE >NUL
  412. CLS
  413. ECHO. ┌─────────────────────────────────────────────────────────────────────┐
  414. ECHO. │ INSTALL.BAT - Batchdatei zum Entpacken der Archive von MDEBUG %VERSION% │
  415. ECHO. └─────────────────────────────────────────────────────────────────────┘
  416. ECHO.
  417. ECHO.                -- Fortsetzung der Syntaxhilfe --
  418. ECHO.
  419. ECHO. Beispiel:  INSTALL D: B: Y
  420. ECHO.              - Installieren von MDEBUG im akt. Directory des Laufwerks
  421. ECHO.                D:, wobei die Diskette mit den Archiven im Laufwerk B:
  422. ECHO.                liegt. Die Directorys werden explizit erstellt.
  423. ECHO.                Sie müssen vorher mit dem CD-Befehl im Ziellaufwerk in
  424. ECHO.                das Directory in das MDEBUG installiert werden soll
  425. ECHO.                wechseln.
  426. ECHO.
  427. ECHO. Beispiel:  INSTALL B: A: Y X
  428. ECHO.              - Installieren von MDEBUG im akt. Directory des Laufwerks
  429. ECHO.                B:, wobei die Diskette mit den Archiven im Laufwerk A:
  430. ECHO.                liegt. Die Directorys werden explizit erstellt.
  431. ECHO.                Auf dem Laufwerk B: muß noch genügend freier Platz sein!
  432. ECHO.
  433. ECHO.                    -- Ende der Syntaxhilfe --
  434. GOTO ENDE
  435.  
  436. REM --------------------------
  437. REM Programm-Ende
  438. :EENDE
  439. ECHO.
  440. ECHO. ***** Verwenden Sie den Befehl
  441. ECHO.
  442. ECHO.       INSTALL ? [RETURN] 
  443. ECHO.
  444. ECHO. ***** zur Ausgabe einer Syntaxhilfe für INSTALL.BAT.
  445. :ENDE0
  446. ECHO.
  447. ECHO. Beende die Ausführung von INSTALL.
  448. ECHO.
  449. :ENDE
  450. REM --------------------------
  451. REM Löschen der verwendeten Environment-Variablen
  452. SET RETADR=
  453. SET RETADR1=
  454. SET FILE=
  455. SET EXT=
  456. SET Z_LW=
  457. SET Q_LW=
  458. SET MKDIRS=
  459. SET TESTFILE=
  460. SET IgnoreError=
  461. SET VERSION=
  462. SET ART=
  463.  
  464.