home *** CD-ROM | disk | FTP | other *** search
- /*
- *
- * *******************************
- * * DOpus LZH Multi-selector *
- * * *
- * * The Archiver *
- * * *
- * * MicroTech Solutions, Inc. *
- * *******************************
- */
-
- options results
-
- count = 1
-
- address command
- return = Open(infile,"ram:infiles.txt","R")
- if return > 0 then do
- do until EOF(infile)
- name.count = ReadLn(infile)
- count = count + 1
- end
- return = close(infile)
- count = count - 2
- end
-
- if count < 1|left(name.1,1) ~='"' then do
- address 'dopus_rexx'
- request "No input files. You must first select some files to be LZH'd"
- exit
- end
-
- address 'dopus_rexx'
-
- request "Have you selected the proper destination directory?"
- ans = RESULT
- if ans = 0 then exit
-
- toptext "Multi-LZH AREXX by John Crookshank"
- getname:
- getstring "Enter the destination filename"
- outname = RESULT
-
- if outname = ''|outname = 'RESULT'|outname = '1' then do
- request "I need an output filename before I can continue, please!"
- ans = RESULT
- if ans = 1 then signal getname
- exit
- end
-
- toptext "Multi-LZH AREXX by John Crookshank. Processing "count" entries..."
-
- status 3 /* get window number */
- win = RESULT
- status 13 win /* get path of displayed window */
- path = RESULT
-
- address command
-
- test = right(outname,4)
- if test ~= '.lzh'&test ~= '.LZH' then do
- outname = outname||'.LZH'
- end
-
- 'c:copy c:lharc ram:'
- counter = 1
- do until counter > count
- 'ram:lharc >nil: <nil: -r a' path||outname name.counter
- counter = counter + 1
- end
-
- 'c:delete ram:infiles.txt quiet'
- 'c:delete ram:lharc quiet'
-
- address 'dopus_rexx'
- status 3 set win
- status 13 win set path
- mssg = count||' entries archived into' path||outname
- request mssg
- exit
-