home *** CD-ROM | disk | FTP | other *** search
/ Carsten's PPE Collection / Carstens_PPE_Collection_2007.zip / T / THTCK12B.ZIP / UNZ.BAT < prev    next >
DOS Batch File  |  1994-06-11  |  3KB  |  89 lines

  1. @echo off
  2. loadbtm on
  3. GOSUB DEL_TEMP
  4.  
  5. :MKDIR
  6. REM  ***  I am useing DRIVE "C" for My work drive make sure you edit this
  7. IF NOT EXIST C:\TEMP%PCBNODE% MD C:\TEMP%PCBNODE%
  8. REM 4DOS Find File Extention
  9. if %@ext[%1]==zip goto zip
  10. if %@ext[%1]==lzh goto lzh
  11. if %@ext[%1]==arj goto arj
  12.  
  13. REM *** If you are running straight DOS then use these lines below
  14. REM DOS'S FIND FILE EXTENTION
  15. REM testfile %1 LZH ARJ ZIP
  16. REM IF ERRORLEVEL 4 GOTO TEST_TXT
  17. REM IF ERRORLEVEL 3 GOTO ZIP
  18. REM IF ERRORLEVEL 2 GOTO ARJ
  19. REM IF ERRORLEVEL 1 GOTO LZH
  20.  
  21. goto end_program
  22.  
  23.  
  24. :ZIP
  25. rem ■ ZIP archive detected
  26. REM *** STRIP AUTHENTIC VERIFICATION ***
  27. STRIPAV -p %1 >NUL
  28.  
  29. REM *** CHECK ZIP FOR CRC ERRORS ***
  30. pkunzip %1 -d C:\TEMP%PCBNODE% 
  31. C:\PCB\ANTI\antiad.exe -cC:\PCB\ANTI\antiad.cfg -pC:\TEMP%PCBNODE%\  -LC:\ANTI%PCBNODE% 
  32. IF EXIST C:\ANTI%PCBNODE% c:\util\pkzip {d %1 @C:\ANTI%PCBNODE%
  33. IF EXIST C:\ANTI%PCBNODE% DEL C:\ANTI%PCBNODE% /Q
  34. fv  %1 >filelist.arc
  35. IF EXIST C:\TEMP%PCBNODE%\FILE_ID.DIZ COPY C:\TEMP%PCBNODE%\FILE_ID.DIZ %PCBDRIVE%%PCBDIR%\DIZ.%PCBNODE% /Q
  36. IF EXIST C:\TEMP%PCBNODE%\*.ZIP MD C:\TEMP%PCBNODE%\TEMP%PCBNODE%
  37. IF EXIST C:\TEMP%PCBNODE%\*.ZIP pkunzip C:\TEMP%PCBNODE%\*.ZIP -d C:\TEMP%PCBNODE%\TEMP\%PCBNODE% 
  38. IF ERRORLEVEL == 50 GOTO ZIP_ERROR
  39. IF ERRORLEVEL == 8 GOTO ZIP_ERROR
  40. IF ERRORLEVEL == 2 GOTO ZIP_ERROR
  41. IF ERRORLEVEL == 1 GOTO ZIP_ERROR
  42. goto end_program
  43.  
  44. :ARJ
  45. REM  ■ ARJ archive detected
  46. fv %1 >filelist.arc
  47. arj x -x@exclude.lst %1 C:\TEMP%PCBNODE% >NUL
  48. IF ERRORLEVEL == goto ZIP_ERROR
  49. if errorlevel == 1 goto ZIP_ERROR
  50. IF EXIST C:\TEMP%PCBNODE%\FILE_ID.DIZ COPY C:\TEMP%PCBNODE%\FILE_ID.DIZ %PCBDRIVE%%PCBDIR%\DIZ.%PCBNODE% /Q
  51. goto end_program
  52.  
  53. :LZH
  54. REM  ■ LHA archive detected
  55. fv %1 >filelist.arc
  56. lha x %1 C:\TEMP%PCBNODE%\ >NUL
  57. if errorlevel == 1 goto ZIP_ERROR
  58. IF EXIST C:\TEMP%PCBNODE%\FILE_ID.DIZ COPY C:\TEMP%PCBNODE%\FILE_ID.DIZ %PCBDRIVE%%PCBDIR%\DIZ.%PCBNODE% /Q
  59. GOTO END_PROGRAM
  60.  
  61. :ZIP_ERROR
  62. gosub del_temp
  63. REM  ■ CRC ERROR!
  64. ECHO FAILED TESTS: ARCHIVE CONTAINS ERRORS >%PCBDRIVE%%PCBDIR%\WORK\PCBFAIL.TXT 
  65. REM 4DOS MOVE COMMAND
  66. MOVE %1 C:\bad.dir /q
  67.  
  68. REM DOS'S MOVE COMMAND
  69. REM MOVE /Y %1 C:\bad.dir
  70. GOTO END_program
  71.  
  72. rem *** REJECT FALSE FORMAT (LHA/ARJ) ***********************************
  73. :INVALID
  74. REM  ■ LHA OR ARJ
  75. ECHO FAILED TESTS: INVALID ARCHIVE (ARJ OR LHA) >%PCBDRIVE%%PCBDIR%\WORK\PCBFAIL.TXT 
  76. GOTO END_program
  77.  
  78. :del_temp
  79. REM MSDos 6.0+ Command to remove Work Directory
  80. REM IF EXIST C:\TEMP%PCBNODE%\*.* DELTREE /Y C:\TEMP%PCBNODE%
  81.  
  82.  
  83. REM 4DOS Command to delete all file's in TEMP Work Directory
  84. IF EXIST C:\TEMP%PCBNODE%\*.* DEL C:\TEMP%PCBNODE% /Y/S/X /Q
  85. RETURN
  86.  
  87. :end_program
  88.  
  89.