home *** CD-ROM | disk | FTP | other *** search
/ Wizard Games 2 / W_GAMES2.ISO / german / wkslist.cmd < prev   
OS/2 REXX Batch file  |  1995-03-02  |  4KB  |  106 lines

  1. /*
  2.     WKSLIST.CMD
  3.  
  4.     REXX-Programm zum Betrachten von Dateien.
  5.  
  6.     Abhängig von der Dateierweiterung wird dann ein passender
  7.     Betrachter aufgerufen.
  8.  
  9.     ***************************************************************
  10.     * Die Liste der benutzten Betrachtungsprogramme kann beliebig *
  11.     * erweitert werden.Zu jeder Erweiterung muss ein passender Be-*
  12.     * trachter definiert werden (siehe unten). Wichtig ist, in der*
  13.     * Zeile                                                       *
  14.     *       Erweiterung.0 = 9                                     *
  15.     * immer die aktuelle Größe der Liste anzupassen.              *
  16.     ***************************************************************
  17.  
  18.  
  19.   * Modus /U "UNZIP" : Datei im ZIP-Archiv. Die Datei wird zuerst
  20.                        aus dem ZIP ins TEMP-Verzeichnis geholt.
  21.     %1 = d:\path\unzip.exe        The UNZIP-Program
  22.     %2 = d:\path\archive.zip      The ZIP-Archive
  23.     %3 = path/path/filename.ext   The file to be unzipped and viewed (with PATH)
  24.     %4 = d:\temppath\WKS0001.TMP  The TEMPPath-Filename-destination
  25.  
  26.   * Modus /L "LIST" : Datei ist bereits vorhanden. Direkt listen !
  27.     %1 = d:\path\filename.ext
  28.  
  29.  
  30.     (C) 1994 Wolfram Körner, Friedenstraße 5a, 97072 Würzburg.
  31.  
  32. */
  33.  
  34. call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
  35. call SysLoadFuncs
  36.  
  37. parse arg cmdline                /* Kommandozeilen-Parameter holen */
  38. parse var cmdline Mode cmdline   /* welchen Modus ? /U oder /L     */
  39. Mode = TRANSLATE(Mode)
  40.  
  41. if Mode = "/U" then do
  42.   parse var cmdline UnzipExe ZIP ZIPFile TEMPFile Rest /* zerlegen */
  43. end
  44.  
  45. if Mode = "/L" then do
  46.   parse var cmdline TEMPFile Rest                      /* oder so zerlegen */
  47.   ZIPFile=TEMPFile
  48. end
  49.  
  50. /* ------ Die Liste der Erweiterungen und der passenden Betrachter ----------*/
  51.  
  52. Betrachter = "e.exe"             /* Im Zweifel wird dieser Betrachter genommen*/
  53.  
  54. Erweiterung.0 = 14               /* Größe der folgenden Liste */
  55.  
  56. Erweiterung.1=".INF"             /* *.INF wird mit VIEW.EXE betrachtet */
  57. Lister.1=     "view.exe"
  58.  
  59. Erweiterung.2=".ICO"             /* *.ICO wird mit ICONEDIT.EXE betrachtet */
  60. Lister.2=     "iconedit.exe"
  61. Erweiterung.3=".BMP"             /* und-so-weiter...                       */
  62. Lister.3=     "iconedit.exe"
  63. Erweiterung.4=".MID"
  64. Lister.4=     "mppm.exe"
  65. Erweiterung.5=".WAV"
  66. Lister.5=     "mppm.exe"
  67. Erweiterung.6=".AVI"
  68. Lister.6=     "mppm.exe"
  69. Erweiterung.7=".MET"
  70. Lister.7=     "picview.exe"
  71. Erweiterung.8=".PIF"
  72. Lister.8=     "picview.exe"
  73. Erweiterung.9=".SPL"
  74. Lister.9=     "picview.exe"
  75. Erweiterung.10=".MOD"
  76. Lister.10=     "dmplayer"
  77. Erweiterung.11=".GIF"
  78. Lister.11=     "pmjpeg"
  79. Erweiterung.12=".PCX"
  80. Lister.12=     "pmjpeg"
  81. Erweiterung.13=".TIF"
  82. Lister.13=     "pmjpeg"
  83. Erweiterung.14=".JPG"
  84. Lister.14=     "pmjpeg"
  85.  
  86. /* -------------- Datei aus dem Archiv holen (nur Modus /U )----------- */
  87. /* UNZIP-Options:
  88.                    -j  "Junk Pathnames"
  89.                    -o  "overwrite"
  90.                    -p  "extract to pipe"
  91. */
  92.  
  93. if Mode = "/U" then
  94. UnzipExe "-pjo" ZIP ZIPFile " > " TEMPFile
  95.  
  96. /* -------------- Suchroutine für den passenden Betrachter ------------ */
  97. ZIPFile = Translate(ZIPFile)   /* In GROSSBUCHSTABEN umwandeln */
  98.  
  99. do i=1 to Erweiterung.0
  100.   if Erweiterung.i = right(ZIPFile, 4) then
  101.      Betrachter=Lister.i
  102. end /* do */
  103.  
  104. /* --------------- Aufruf des Betrachters mit der Datei --------------- */
  105. 'start /f' Betrachter TEMPFile
  106.