home *** CD-ROM | disk | FTP | other *** search
- Invoking UNZIP.IMG from external applications
-
- The main enhancement in version 1.4 is that it allows the
- destination directory (where the extracted files will be placed)
- to be specified on the command line. This is useful where Unzip
- is being spawned by a parent process, rather than run
- interactively using the RUN.APP utility.
-
- The syntax for specifying the destination directory is as follows:
-
- m:\run\unzip.img [options] -@ m:\destin\dir\ zipfilename
-
- The -@ switch (chosen so as to be unlikely to conflict with
- switches for other platforms) must be used as follows:
-
- 1) It must be the *last* of any options on the command line.
-
- 2) It must be followed by (at least one) space, then the full
- path name of the destination directory.
-
- 3) The destination directory must exist already.
-
- 4) The destination directory name must be terminated with a
- backslash (EPOC requires this).
-
- Example command line:
-
- -qq -@ m:\tmp\ a:\zipfile.zip
-
- unzips quietly the zip file on drive A to the \tmp directory of
- the internal drive.
-
-
- Invoking UNZIP.IMG from C or C++
-
- #include <plib.h>
- /* This assumes PLIB is in use, change as required for CLIB */
-
- int pid;
- char name[64];
- char cmdl[128];
-
- p_scpy(name, "m:\\run\\unzip.img"); /* Or wherever Unzip is located */
- p_scpy(cmdl, "command line to be passed");
- pid = p_execc(name, cmdl, p_slen(cmdl));
- if (pid<0)
- p_notifyerr(pid, "Unzip launch failed", NULL, NULL, NULL);
- else
- p_presume(pid);
-
-
- Invoking UNZIP.IMG from OPL
-
- #ifdef S3A
- #define UADD(x,y) uadd(x,y)
- #else
- #define UADD(x,y) (x+y)
- #endif
-
- local pid%, ret%
- local name$(64), cmdl$(128)
-
- name$="m:\run\unzip.img"+chr$(0) REM Or wherever Unzip is located
- cmdl$="command line to be passed"+chr$(0)
- ret%=call($0187,UADD(addr(name$),1),addr(cmdl$),0,0,addr(pid%))
- if ret%<0
- alert("Unzip launch failed",err$(ret%))
- else
- call($0688,pid%,0,0,0,0) REM Resume process
- endif
-
- -------------
- David Palmer
- Edinburgh
- Scotland
- September, 1995
-
-