Skip to content

Instantly share code, notes, and snippets.

@illikainen
Created July 13, 2020 14:23
Show Gist options
  • Save illikainen/b33fbc933246981ce49d8d62aabd43cf to your computer and use it in GitHub Desktop.
Save illikainen/b33fbc933246981ce49d8d62aabd43cf to your computer and use it in GitHub Desktop.
NOTE: from https://www.madobe.net/archiver/lib/yz1d032.exe (translated to English with Google Translate)
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
YZ1.DLL Ver 0.32 Document for developers
K.INABA
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
==index==
☆Introduction
☆ About command
☆ About wild cards
(☆ About API ===> api.txt)
(☆ About structure/message/callback ===> api.txt)
(☆ About error code ===> api.txt)
=========
★Introduction
Both current specifications are subject to change in the future.
This DLL is via LoadLibrary() / GetProcAddress()
It is recommended to use with dynamic link.
★ About commands
<command> [-<options>...] <yz1_file_name> [<directory_name>\] [<filespecs>...]
Commands (<command>) and options (<options>) are case sensitive
I will. Individual blanks, tabs, or line breaks are called parameters.
I will. Be sure to write the parameters in the order written in the above format.
If the first character is @, the file name that follows is the response file.
And replace that part with the contents of the file.
In the response file as well, the file names are separated by blanks, tabs, or
You and shall. In addition, another response file in the response file
Cannot be specified.
If you specify a file name or options that include spaces,
Please enclose it with "". The same applies to the response file.
<command>
c Create archive
Create a new archive and compress and store the specified file.
Due to the nature of the YZ1 archive, it is not possible to perform additional compression on the existing archive.
x expansion (eXpand archive)
Extract the files in the archive to the specified directory or current.
Extract only some files by specifying in [<filespecs>...]
It is also possible.
s Convert to self-extracting format (Sfx)
Convert an ordinary YZ1 archive into a self-extracting archive.
j Release self-extracting format
Convert YZ1 self-extracting archive to ordinary YZ1 archive.
<-options>
The [-c0] in parentheses after the switch name indicates that option.
It shows the default settings of YZ1.DLL when nothing is written.
When numbers are omitted and simply written as -c, etc., unless otherwise specified
"1" is supplemented and treated the same as -c1.
--Specify response file character (response file) [--@]
For example, --! will be used as the response in the format !resp.file.
You will need to specify the file. If you just specify --,
After that, the response file cannot be used.
-+ Use default setting (not use registry setting)
This option is used to force the registry specification to be ignored.
It doesn't make sense because it doesn't currently support the registry.
-c[0|1|2] Check Timestamp (Check timestamp) [-c0]
If there is a file with the same name when expanding
Set. The old and new update dates are the standard.
-c0: Inquire when the file in the archive is older
-c1: Check omitted (always overwritten)
-c2: Check omitted (always ask)
-ea[0|1|2] Path inspection [-ea1]
A file stored with a file name with an absolute path or ".."
Controls the behavior when trying to deploy. Standard
When you want to prohibit overwriting outside the directory
You can use this switch. Also effective during compression.
-ea0: Allow all
-ea1: ask user in dialog
-ea2: All prohibited
-i[0|1|2] Silent mode (sIlent mode) [-i0]
This is a control switch for how much the status of compression and expansion is displayed.
-i0: Show all
-i1: Display public key information only
-i2: display nothing
-P Password compression (Password)
-P public-key password compression (Public-key password)
To specify the password from the command line, use -pPASSWORD
Specify. If you just specify -p or -P without specifying it, the DLL will
Contact the user. The password is up to 255Bytes.
It can also be used as a default password specification when decompressing.
-r[0|1|2] Compressed lower directory search (Recursive search) [-r2]
It is the specification of the file search method when storing in the archive.
-r0: Non-recursive mode. Stores only the file specified by the path name.
-r1: File name specification recursive mode. Separate the path and file name,
Recursively searches files under the specified directory,
Expand the one that matches the file name.
-r2: Directory name specification recursive mode. If you specify a directory name,
Store all files under it.
※Note! Currently, this option does not work during deployment.
-S Compress in self-extracting format (make Self-extrating-archive ).
"The directory where the application exe is located -> system
Find yzdec.exe in the order of -> windows and use the first one found
Compress to SFX. It will fail if yzdec.exe is not found anywhere.
(From v0.32, the current directory is no longer searched)
Also, specify the location of the SFX module like -sa:\deepf\yzdec.exe.
You can also specify the full path. In this case, the specified yzdec.exe is also
It will fail if it does not exist.
-x[0|1] Use directory information (extract/archive with full pathname) [-x1]
It is effective for both compression and decompression.
-x0: Ignore directory information.
-x1: Compress and decompress while reproducing the directory structure.
-y[0|1|2] Answers to yes/no questions (Yes to all) [-y2]
-y0: always "no"
-y1: Always "Yes"
-y2: User select in dialog
-z[0|1] match with full pathname when expanding
-z0: Compare by file name only
-z1: Strictly compare all passes
※Note! Currently, this option does not work during compression.
<yz1_file_name>
YZ1.DLL considers the first file name as YZ1 archive name.
The library name cannot be specified with a wild card.
<directory_name>
If the file name following <yz1_file_name> ends with \,
It is regarded as the specification of the base directory.
If this directory is not specified, the current directory will be the base directory.
<filespecs...>
For the remaining parameters, specify the file name you want to compress/decompress.
Specify. You can use wild cards. See below.
If this parameter is not specified, an error will occur during compression.
When expanding, "all files" will be expanded. -z option
Depending on the state, the operation may not be the same as when "*" is specified.
★ About wild cards
\ And /, half-width uppercase letters and half-width lowercase letters are equated.
You can use * (any character string not including \) and? (Any character other than \).
"*.*" means "a file containing .."
Please note that it is not "all files".
Currently, at the time of compression, the file name specification with a wild card is
Does not match the NTFS secondary stream.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment