home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / FileMover / Dopus5 / tradecfg.lha / arexx / FileId.DOpus5 < prev    next >
Encoding:
Text File  |  1995-06-06  |  3.0 KB  |  91 lines

  1. /* Descript FileId.DIZ for DOPUS5      » ® UFOk/MsT^LsD`95 «   */
  2.  
  3. lf='a'x
  4.  
  5. Options Results
  6. parse arg '"' file '"'
  7.  
  8. cuthere=lastpos('/',file)
  9. if cuthere=0 then cuthere=pos(':',file)
  10. name=UPPER(substr(file,cuthere+1))
  11.  
  12. mod=LEFT(name,4)
  13. ext=RIGHT(name,4)
  14.  
  15. cmd=''
  16. if ext='.LZH' then cmd='LhA >NIL: <* e 'file' FILE_ID.DIZ RAM:T/'
  17. if ext='.LHA' then cmd='LhA >NIL: <* e 'file' FILE_ID.DIZ RAM:T/'
  18. if ext='.LZX' then cmd='LZX >NIL: <* x 'file' FILE_ID.DIZ RAM:T/'
  19. if ext='.DMS' then cmd='DMSDescript >NIL: <* x RAM:T/FILE_ID.DIZ 'file
  20. if ext='.EXE' then cmd='EXEDescript >NIL: <* x RAM:T/FILE_ID.DIZ 'file
  21. if ext='.TXT' then cmd='TxTExtract >NIL: <* e RAM:T/FILE_ID.DIZ 'file
  22. if ext='.NFO' then cmd='TxTExtract >NIL: <* e RAM:T/FILE_ID.DIZ 'file
  23. if ext='.DOC' then cmd='TxTExtract >NIL: <* e RAM:T/FILE_ID.DIZ 'file
  24. if ext='.SOL' then cmd='TxTExtract >NIL: <* e RAM:T/FILE_ID.DIZ 'file
  25. if ext='.GIF' then cmd='GifDescript >NIL: <* e 'file' RAM:T/FILE_ID.DIZ'
  26. if ext='.ZIP' then cmd='UnZip >NIL: <* -o 'file' FILE_ID.DIZ -d RAM:T/'
  27.  
  28. if mod='MOD.' then do
  29.  if UPPER(RIGHT(name,4))='.XPK' then do
  30.    parse var name mod'.'module'.'ext
  31.    Address command 'Delete >NIL: RAM:T/FILE_ID.DIZ'
  32.    Address command 'XPackIT >NIL: <* 'file' RAM:T/mod.'module' UnPack'
  33.    Address command 'ModDescript >NIL: <* RAM:T/FILE_ID.DIZ RAM:mod.'module
  34.    Address command 'Delete >NIL: RAM:T/mod.'module
  35.    SIGNAL ViewId
  36.   end
  37.  if UPPER(RIGHT(name,3))='.PP' then do
  38.   parse var name mod'.'module'.'ext
  39.   Address command 'Delete >NIL: RAM:T/FILE_ID.DIZ'
  40.   Address command 'PackIT >NIL: <* 'file' RAM:T/mod.'module' DeCrunch'
  41.   Address command 'ModDescript >NIL: <* RAM:T/FILE_ID.DIZ RAM:mod.'module
  42.   Address command 'Delete >NIL: RAM:T/mod.'module
  43.   SIGNAL ViewId
  44.  end
  45.  CALL OPEN(ext,file,'R')
  46.  pp=READLN(ext)
  47.  CALL CLOSE(ext)
  48.  if LEFT(pp,4)='XPKF' then do
  49.    parse var name mod'.'module
  50.    Address command 'Delete >NIL: RAM:T/FILE_ID.DIZ'
  51.    Address command 'XPackIT >NIL: <* 'file' RAM:T/mod.'module' UnPack'
  52.    Address command 'ModDescript >NIL: <* RAM:T/FILE_ID.DIZ RAM:mod.'module
  53.    Address command 'Delete >NIL: RAM:T/mod.'module
  54.    SIGNAL ViewId
  55.   end
  56.  if LEFT(pp,4)='PP20' then do
  57.   parse var name mod'.'module
  58.   Address command 'Delete >NIL: RAM:T/FILE_ID.DIZ'
  59.   Address command 'PackIT >NIL: <* 'file' RAM:T/mod.'module' DeCrunch'
  60.   Address command 'ModDescript >NIL: <* RAM:T/FILE_ID.DIZ RAM:T/mod.'module
  61.   Address command 'Delete >NIL: RAM:T/mod.'module
  62.   SIGNAL ViewId
  63.  end
  64.  Address command 'Delete >NIL: RAM:T/FILE_ID.DIZ'
  65.  Address command 'ModDescript >NIL: <* RAM:T/FILE_ID.DIZ 'file
  66.  SIGNAL ViewId
  67. end
  68. if cmd='' then do
  69.  address DOPUS.1
  70.  dopus request '"FILE_ID.DIZ » 'file||lf||'Unknown Archive!" _EXIT'
  71.  exit
  72. end
  73. Address command 'Delete >NIL: RAM:T/FILE_ID.DIZ'
  74. signal on ERROR
  75. Address command cmd
  76. ShowMe=lf
  77.  
  78. ViewId:
  79. if exists("RAM:T/FILE_ID.DIZ") then do
  80.  CALL OPEN(FileID,'RAM:T/FILE_ID.DIZ','R') 
  81.  DO UNTIL EOF(FileId)
  82.   ShowMe=ShowMe||lf||readln(FileId)
  83.  END
  84.  CALL CLOSE(FileID)
  85. end
  86. address DOPUS.1
  87. dopus request '"FILE_ID.DIZ » 'file||ShowMe'" _OK'
  88.  
  89. ERROR:
  90. exit
  91.