Стартовый пул

This commit is contained in:
2024-04-02 08:46:59 +03:00
parent fd57fffd3a
commit 3bb34d000b
5591 changed files with 3291734 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<p>UnRAR.dll is Windows dynamic-link library, which provides file extraction.
from RAR archives. It is available both as 32-bit (unrar.dll) and 64-bit x64
(unrar64.dll) versions.</p>
<p>You can find samples of UnRAR.dll use in "Examples" folder.
All samples except C sample (UnRDLL.c) are contributed by unrar.dll users.
We at rarlab.com created and tested only UnRDLL.c sample.</p>
<p>Brief scenario of unrar.dll use includes the call of
<a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a> to open an archive,
<a href="RARReadHeaderEx.htm">RARReadHeaderEx</a> to read archive headers,
<a href="RARProcessFileW.htm">RARProcessFileW</a> to process read header
and <a href="RARCloseArchive.htm">RARCloseArchive</a> to close the archive
and free all previously allocated objects.<p>
<p>If you use this library in Unix, you may need to call
setlocale(LC_CTYPE, "") in your application, so Unicode conversion functions
work properly.
<p>Please read <a href="index.htm#functions">the functions description</a>
and look into source code in "Examples" folder for more details.</p>
</body>
</html>

View File

@@ -0,0 +1,136 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>User defined callback function</h3>
int CALLBACK CallbackProc(UINT msg,LPARAM UserData,LPARAM P1,LPARAM P2);
<h3>Description</h3>
<p>This function is called by UnRAR.dll library to process different
UnRAR events listed below. You can specify the address of this function
either in <a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a> (preferable)
or in <a href="RARSetCallback.htm">RARSetCallback</a> (obsolete)</p>
<h3>Function parameters</h3>
<p>The function will be passed four parameters:</p>
<ul>
<li>
<a name="msg"></a>
<i>msg</i>
<blockquote>
<p>Event type. Possible values:</p>
<ul>
<li>
<b>UCM_CHANGEVOLUME<br>
UCM_CHANGEVOLUMEW</b>
<blockquote>
<p>Process volume change.</p>
<p><b>P1</b> points to the zero terminated name of the next volume.</p>
<p><b>P2</b> defines the function call mode.</p>
<table border=1><tr>
<td>RAR_VOL_ASK</td>
<td>Required volume is absent. The function should prompt user
and return 1 to retry or return -1 value to terminate operation.
The function may also set a new volume name, placing up to
1024 characters to the address specified by P1 parameter.<br><br>
Volume name uses single byte ANSI encoding for UCM_CHANGEVOLUME
and Unicode for UCM_CHANGEVOLUMEW. If application provides
a new volume name in UCM_CHANGEVOLUMEW, UCM_CHANGEVOLUME
is not sent.
</td>
</tr><tr>
<td>RAR_VOL_NOTIFY</td>
<td>Required volume is successfully opened. This is a notification
call and volume name modification is not allowed. The function
should return 1 to continue or -1 to terminate operation.
Volume name uses single byte ANSI encoding for UCM_CHANGEVOLUME
and Unicode for UCM_CHANGEVOLUMEW.
</td>
</tr></table>
</blockquote>
<li>
<b>UCM_PROCESSDATA</b>
<blockquote>
<p>Process unpacked data. It can be used to read a file from memory,
while it is being extracted or tested. If you use this event
while testing a file, then it makes possible to read file data
without extracting file to disk.</p>
<p>Return 1 to continue processing or -1 to cancel the archive
operation.</p>
<p><b>P1</b> contains the address pointing to the unpacked data.
Callback function can read the data but must not modify it.</p>
<p><b>P2</b> contains the size of the unpacked data. It is guaranteed
that this size will not exceed the maximum dictionary size
(4 MB in RAR 3.0).</p>
</blockquote>
<li>
<b>UCM_NEEDPASSWORD<br>
UCM_NEEDPASSWORDW</b>
<blockquote>
<p>DLL needs a password to process archive. This message must be
processed if you wish to be able to handle encrypted archives.</p>
<p>Return 1 to continue process or -1 to cancel the archive
operation.</p>
<p><b>P1</b> contains the address pointing to the buffer for
a password in single byte encoding. You need to copy a password
here. Password uses single byte ANSI encoding for UCM_NEEDPASSWORD
and Unicode for UCM_NEEDPASSWORDW. If application provides
a password in UCM_NEEDPASSWORDW, UCM_NEEDPASSWORD is not sent.</p>
<p><b>P2</b> contains the size of password buffer in characters.</p>
</blockquote>
</ul>
</blockquote>
<li>
<i>UserData</i>
<blockquote>
<p>User defined value passed to RARSetCallback. You can specify it,
when defining the callback function in
<a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a>
or <a href="RARSetCallback.htm">RARSetCallback</a></p>
</blockquote>
<li>
<i>P1</i><br>
<i>P2</i>
<blockquote>
<p>Event dependent parameters. Read <a href="#msg"><i>msg</i> description</a>
above for detailed information.<p>
</blockquote>
</ul>
<h3>Return values</h3>
<p>In general returning -1 means canceling the operation and returning
1 continues processing. Please also read event descriptions above
in case we'll add some exceptions from this rule.
Return 0 for those event types which you do not process including
unknown event types.
</p>
<h3>Notes</h3>
<blockquote>
Other UnRAR.dll functions must not be called from the callback function.
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,42 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>int PASCAL RARCloseArchive(HANDLE hArcData)</h3>
<h3>Description</h3>
<p>
Close RAR archive and release allocated memory. It must be called when
archive processing is finished, even if the archive processing was stopped
due to an error.</p>
<h3>Parameters</h3>
<i>hArcData</i>
<blockquote>
This parameter should contain the archive handle obtained from
<a href="RAROpenArchive.htm">RAROpenArchive</a> or
<a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a> function call.
</blockquote>
<h3>Return values</h3>
<blockquote>
<table border="1">
<tr><td>0</td><td>Success</td></tr>
<tr><td>ERAR_ECLOSE</td><td>Archive close error</td></tr>
</table>
</blockquote>
<h3>See also</h3>
<blockquote>
<a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a> function.
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,36 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>int PASCAL RARGetDllVersion()</h3>
<h3>Description</h3>
Returns API version.
<h3>Parameters</h3>
None.
<h3>Return values</h3>
<p>Returns an integer value denoting UnRAR.dll API version, which is also
defined in unrar.h as RAR_DLL_VERSION. API version number is incremented
only in case of noticeable changes in UnRAR.dll API. Do not confuse it
with version of UnRAR.dll stored in DLL resources, which is incremented
with every DLL rebuild.</p>
<p>If RARGetDllVersion() returns a value lower than UnRAR.dll, which your
application was designed for, it may indicate that DLL version is too old
and it may fail to provide all necessary functions to your application.</p>
<p>This function is missing in very old versions of UnRAR.dll,
so it is safer to use LoadLibrary and GetProcAddress to access it.</p>
</body>
</html>

View File

@@ -0,0 +1,183 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>RARHeaderData structure</h3>
<pre>
struct RARHeaderData
{
char ArcName[260];
char FileName[260];
unsigned int Flags;
unsigned int PackSize;
unsigned int UnpSize;
unsigned int HostOS;
unsigned int FileCRC;
unsigned int FileTime;
unsigned int UnpVer;
unsigned int Method;
unsigned int FileAttr;
char *CmtBuf;
unsigned int CmtBufSize;
unsigned int CmtSize;
unsigned int CmtState;
};
</pre>
<h3>Description</h3>
<p>This structure is used by <a href="RARReadHeader.htm">RARReadHeader</a>
function.</p>
<h3>Structure fields</h3>
<ul>
<li>
<i>ArcName</i>
<blockquote>
Output parameter which contains a zero terminated string of the
current archive name. May be used to determine the current volume name.
</blockquote>
<li>
<i>FileName</i>
<blockquote>
Output parameter which contains a zero terminated string of the
file name in OEM (DOS) encoding.
</blockquote>
<li>
<i>Flags</i>
<blockquote>
<p>Output parameter which contains file flags:</p>
<table border="1">
<tr><td>RHDF_SPLITBEFORE</td><td>0x01</td><td>File continued from previous volume</td></tr>
<tr><td>RHDF_SPLITAFTER</td><td>0x02</td><td>File continued on next volume</td></tr>
<tr><td>RHDF_ENCRYPTED</td><td>0x04</td><td>File encrypted with password</td></tr>
<tr><td></td><td>0x08</td><td>Reserved</td></tr>
<tr><td>RHDF_SOLID</td><td>0x10</td><td>Previous files data is used (solid flag)</td></tr>
<tr><td>RHDF_DIRECTORY</td><td>0x20</td><td>Directory entry</td></tr>
</table>
<p>Other bits are reserved.</p>
</blockquote>
<li>
<i>PackSize</i>
<blockquote>
Output parameter. Packed file size or size of file part if file
was split between volumes.
</blockquote>
<li>
<i>UnpSize</i>
<blockquote>
Output parameter. Unpacked file size.
</blockquote>
<li>
<i>HostOS</i>
<blockquote>
<p>Output parameter. Operating system used to create the archive.</p>
<table border="1">
<tr><td>0</td><td>MS DOS</td></tr>
<tr><td>1</td><td>OS/2</td></tr>
<tr><td>2</td><td>Windows</td></tr>
<tr><td>3</td><td>Unix</td></tr>
</table>
</blockquote>
<li>
<i>FileCRC</i>
<blockquote>
Output parameter, which contains unpacked file CRC32. In case of file
parts split between volumes only the last part contains the correct
CRC and it is accessible only in RAR_OM_LIST_INCSPLIT listing mode.
</blockquote>
<li>
<i>FileTime</i>
<blockquote>
Output parameter. Contains the file modification date and time in standard
MS DOS format.
</blockquote>
<li>
<i>UnpVer</i>
<blockquote>
Output parameter. RAR version needed to extract file.
It is encoded as 10 * Major version + minor version.
</blockquote>
<li>
<i>Method</i>
<blockquote>
<p>Output parameter. Packing method.</p>
<table border="1">
<tr><td>0x30</td><td>Storing</td></tr>
<tr><td>0x31</td><td>Fastest compression</td></tr>
<tr><td>0x32</td><td>Fast compression</td></tr>
<tr><td>0x33</td><td>Normal compression</td></tr>
<tr><td>0x34</td><td>Good compression</td></tr>
<tr><td>0x35</td><td>Best compression</td></tr>
</table>
</blockquote>
<li>
<i>FileAttr</i>
<blockquote>
Output parameter. File attributes.
</blockquote>
</ul>
<li>
<i>CmtBuf</i>
<blockquote>
<p>Input parameter. Points to the buffer for file comment.</p>
<p>File comment support is not implemented in current unrar.dll version.
Appropriate parameters are preserved only for compatibility
with older versions.</p>
<p>Set this field to NULL.</p>
</blockquote>
<li>
<i>CmtBufSize</i>
<blockquote>
<p>Input parameter. Size of buffer for file comments.</p>
<p>File comment support is not implemented in current unrar.dll version.</p>
<p>Set this field to 0.</p>
</blockquote>
<li>
<i>CmtSize</i>
<blockquote>
<p>Output parameter. Size of file comment read into buffer.<p>
<p>File comment support is not implemented in current unrar.dll version.</p>
<p>Always equal to 0.</p>
</blockquote>
<li>
<i>CmtState</i>
<blockquote>
<p>Output parameter. State of file comment.<p>
<p>File comment support is not implemented in current unrar.dll version.</p>
<p>Always equal to 0.</p>
</blockquote>
</ul>
<h3>See also</h3>
<blockquote>
<a href="RARReadHeader.htm">RARReadHeader</a> function.
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,292 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>RARHeaderDataEx structure</h3>
<pre>
struct RARHeaderDataEx
{
char ArcName[1024];
wchar_t ArcNameW[1024];
char FileName[1024];
wchar_t FileNameW[1024];
unsigned int Flags;
unsigned int PackSize;
unsigned int PackSizeHigh;
unsigned int UnpSize;
unsigned int UnpSizeHigh;
unsigned int HostOS;
unsigned int FileCRC;
unsigned int FileTime;
unsigned int UnpVer;
unsigned int Method;
unsigned int FileAttr;
char *CmtBuf;
unsigned int CmtBufSize;
unsigned int CmtSize;
unsigned int CmtState;
unsigned int DictSize;
unsigned int HashType;
char Hash[32];
unsigned int RedirType;
wchar_t *RedirName;
unsigned int RedirNameSize;
unsigned int DirTarget;
unsigned int Reserved[994];
};
</pre>
<h3>Description</h3>
<p>This structure is used by <a href="RARReadHeaderEx.htm">RARReadHeaderEx</a>
function. Please fill either the entire structure or at least its Reserved
field with zeroes before passing to RARReadHeaderEx.</p>
<h3>Structure fields</h3>
<ul>
<li>
<i>ArcName</i>
<blockquote>
Output parameter, which contains a zero terminated string of the current
archive name. May be used to determine the current volume name.
</blockquote>
<li>
<i>ArcNameW</i>
<blockquote>
Output parameter, which contains a zero terminated string of the current
archive name in Unicode. May be used to determine the current volume name.
</blockquote>
<li>
<i>FileName</i>
<blockquote>
Output parameter, which contains a zero terminated string of the file name
in OEM (DOS) encoding.
</blockquote>
<li>
<i>FileNameW</i>
<blockquote>
Output parameter, which contains a zero terminated string of the file name
in Unicode.
</blockquote>
<li>
<i>Flags</i>
<blockquote>
<p>Output parameter which contains file flags:</p>
<table border="1">
<tr><td>RHDF_SPLITBEFORE</td><td>0x01</td><td>File continued from previous volume</td></tr>
<tr><td>RHDF_SPLITAFTER</td><td>0x02</td><td>File continued on next volume</td></tr>
<tr><td>RHDF_ENCRYPTED</td><td>0x04</td><td>File encrypted with password</td></tr>
<tr><td></td><td>0x08</td><td>Reserved</td></tr>
<tr><td>RHDF_SOLID</td><td>0x10</td><td>Previous files data is used (solid flag)</td></tr>
<tr><td>RHDF_DIRECTORY</td><td>0x20</td><td>Directory entry</td></tr>
</table>
</blockquote>
<li>
<i>PackSize</i>
<blockquote>
Output parameter. Lower 32 bits of packed file size. If file is split
between volumes, it contains the lower 32 bits of file part size.
</blockquote>
<li>
<i>PackSizeHigh</i>
<blockquote>
Output parameter. Higher 32 bits of packed file size. If file is split
between volumes, it contains the higher 32 bits of file part size.
</blockquote>
<li>
<i>UnpSize</i>
<blockquote>
Output parameter. Lower 32 bits of unpacked file size.
</blockquote>
<li>
<i>UnpSizeHigh</i>
<blockquote>
Output parameter. Higher 32 bits of unpacked file size.
</blockquote>
<li>
<i>HostOS</i>
<blockquote>
<p>Output parameter. Operating system used to create the archive.</p>
<table border="1">
<tr><td>0</td><td>MS DOS</td></tr>
<tr><td>1</td><td>OS/2</td></tr>
<tr><td>2</td><td>Windows</td></tr>
<tr><td>3</td><td>Unix</td></tr>
</table>
</blockquote>
<li>
<i>FileCRC</i>
<blockquote>
Output parameter, which contains unpacked file CRC32. In case of file
parts split between volumes only the last part contains the correct
CRC and it is accessible only in RAR_OM_LIST_INCSPLIT listing mode.
</blockquote>
<li>
<i>FileTime</i>
<blockquote>
Output parameter. Contains the file modification date and time in standard
MS DOS format.
</blockquote>
<li>
<i>UnpVer</i>
<blockquote>
Output parameter. RAR version needed to extract file.
It is encoded as 10 * Major version + minor version.
</blockquote>
<li>
<i>Method</i>
<blockquote>
<p>Output parameter. Packing method.</p>
<table border="1">
<tr><td>0x30</td><td>Storing</td></tr>
<tr><td>0x31</td><td>Fastest compression</td></tr>
<tr><td>0x32</td><td>Fast compression</td></tr>
<tr><td>0x33</td><td>Normal compression</td></tr>
<tr><td>0x34</td><td>Good compression</td></tr>
<tr><td>0x35</td><td>Best compression</td></tr>
</table>
</blockquote>
<li>
<i>FileAttr</i>
<blockquote>
Output parameter. File attributes.
</blockquote>
</ul>
<li>
<i>CmtBuf</i>
<blockquote>
<p>Input parameter. Points to the buffer for file comment.</p>
<p>File comment support is not implemented in current unrar.dll version.
Appropriate parameters are preserved only for compatibility
with older versions.</p>
<p>Set this field to NULL.</p>
</blockquote>
<li>
<i>CmtBufSize</i>
<blockquote>
<p>Input parameter. Size of buffer for file comments.</p>
<p>File comment support is not implemented in current unrar.dll version.</p>
<p>Set this field to 0.</p>
</blockquote>
<li>
<i>CmtSize</i>
<blockquote>
<p>Output parameter. Size of file comment read into buffer.</p>
<p>File comment support is not implemented in current unrar.dll version.</p>
<p>Always equal to 0.</p>
</blockquote>
<li>
<i>CmtState</i>
<blockquote>
<p>Output parameter. State of file comment.</p>
<p>File comment support is not implemented in current unrar.dll version.</p>
<p>Always equal to 0.</p>
</blockquote>
<li>
<i>DictSize</i>
<blockquote>
<p>Output parameter. Size of file compression dictionary in kilobytes.
</blockquote>
<li>
<i>HashType</i>
<blockquote>
<p>Output parameter. Type of hash function used to protect file data
integrity. Can be RAR_HASH_NONE (no checksum or unknown hash function type),
RAR_HASH_CRC32 (CRC32) or RAR_HASH_BLAKE2 (BLAKE2sp)</p>
</blockquote>
<li>
<i>Hash</i>
<blockquote>
<p>Output parameter. If HashType is equal to RAR_HASH_BLAKE2, this array
contains 32 bytes of file data BLAKE2sp hash.</p>
</blockquote>
<li>
<i>RedirType</i>
<blockquote>
<p>Output parameter. Type of file system redirection.</p>
<table border="1">
<tr><td>0</td><td>No redirection, usual file.</td></tr>
<tr><td>1</td><td>Unix symbolic link</td></tr>
<tr><td>2</td><td>Windows symbolic link</td></tr>
<tr><td>3</td><td>Windows junction</td></tr>
<tr><td>4</td><td>Hard link</td></tr>
<tr><td>5</td><td>File reference saved with -oi switch</td></tr>
</table>
</blockquote>
<li>
<i>RedirName</i>
<blockquote>
<p>Input/output parameter. Pointer to buffer to receive file system
redirection target name, such as target of symbolic link or file reference.
It is returned as stored in archive and its value might be not immediately
applicable for further use. For example, you may need to remove \??\
or UNC\ prefixes for Windows junctions or prepend the extraction
destination path.</p>
<p>If you set RedirName to NULL, it is ignored and nothing is returned
here.</p>
</blockquote>
<li>
<i>RedirNameSize</i>
<blockquote>
<p>Input parameter. Size of buffer specified in RedirName. Ignored if
RedirName is NULL.</p>
</blockquote>
<li>
<i>DirTarget</i>
<blockquote>
<p>Output parameter. Non-zero if RedirType is symbolic link
and RedirName points to directory.</p>
</blockquote>
<li>
<i>Reserved</i>
<blockquote>
Reserved for future use. The entire array must be filled with zeroes
before passing RARHeaderDataEx structure to RARReadHeaderEx.
</blockquote>
</ul>
<h3>See also</h3>
<blockquote>
<a href="RARReadHeaderEx.htm">RARReadHeaderEx</a> function.
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,38 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>HANDLE PASCAL RAROpenArchive(struct RAROpenArchiveData *ArchiveData)</h3>
<h3>Description</h3>
<p>Open RAR archive and allocate memory structures.</p>
<p>This function is obsolete. It does not support Unicode names
and does not allow to specify the callback function. It is recommended
to use <a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a> instead.<p>
<h3>Parameters</h3>
<i>ArchiveData</i>
<blockquote>
Points to <a href="RAROpenArchiveData.htm">RAROpenArchiveData structure</a>.
</blockquote>
<h3>Return values</h3>
<blockquote>
Archive handle or NULL in case of error.
</blockquote>
<h3>See also</h3>
<blockquote>
<a href="RAROpenArchiveData.htm">RAROpenArchiveData</a> structure.
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,137 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>RAROpenArchiveData structure</h3>
<pre>
struct RAROpenArchiveData
{
char *ArcName;
UINT OpenMode;
UINT OpenResult;
char *CmtBuf;
UINT CmtBufSize;
UINT CmtSize;
UINT CmtState;
};
</pre>
<h3>Description</h3>
<p>This structure is used by <a href="RAROpenArchive.htm">RAROpenArchive</a>
function.</p>
<h3>Structure fields</h3>
<ul>
<li>
<i>ArcName</i>
<blockquote>
Input parameter which should point to zero terminated string
containing the archive name.
</blockquote>
<li>
<i>OpenMode</i>
<blockquote>
<p>Input parameter.</p>
<p>Possible values</p>
<ul>
<li>
<b>RAR_OM_LIST</b>
<p>Open archive for reading file headers only.</p>
<li>
<b>RAR_OM_EXTRACT</b>
<p>Open archive for testing and extracting files.</p>
<li>
<b>RAR_OM_LIST_INCSPLIT</b>
<p>Open archive for reading file headers only. If you open an archive
in such mode, RARReadHeader[Ex] will return all file headers,
including those with "file continued from previous volume" flag.
In case of RAR_OM_LIST such headers are automatically skipped.
So if you process RAR volumes in RAR_OM_LIST_INCSPLIT mode, you will
get several file header records for same file if file is split between
volumes. For such files only the last file header record will contain
the correct file CRC and if you wish to get the correct packed size,
you need to sum up packed sizes of all parts.</p>
</ul>
</blockquote>
<li>
<i>OpenResult</i>
<blockquote>
<p>Output parameter.</p>
<p>Possible values:</p>
<table border=1>
<tr><td> 0 </td><td> Success</td></tr>
<tr><td> ERAR_NO_MEMORY </td><td> Not enough memory to initialize data structures</td></tr>
<tr><td> ERAR_BAD_DATA </td><td> Archive header broken</td></tr>
<tr><td> ERAR_UNKNOWN_FORMAT </td><td> Unknown encryption used for archive headers </td></tr>
<tr><td> ERAR_EOPEN </td><td> File open error</td></tr>
<tr><td> ERAR_BAD_PASSWORD </td>
<td>Entered password is invalid. This code is returned only for archives
in RAR 5.0 format</td></tr>
</table>
</blockquote>
<li>
<i>CmtBuf</i>
<blockquote>
Input parameter which should point to the buffer for archive
comments. Maximum comment size is limited to 64Kb. Comment text is
zero terminated. If the comment text is larger than the buffer
size, the comment text will be truncated. If CmtBuf is set to
NULL, comments will not be read.
</blockquote>
<li>
<i>CmtBufSize</i>
<blockquote>
Input parameter which should contain size of buffer for archive
comments.
</blockquote>
<li>
<i>CmtSize</i>
<blockquote>
Output parameter containing size of comments actually read into the
buffer, cannot exceed CmtBufSize.
</blockquote>
<li>
<i>CmtState</i>
<blockquote>
<p>Output parameter.</p>
<p>Possible values:</p>
<table border=1>
<tr><td> 0 </td><td> Comments are not present</td></tr>
<tr><td> 1 </td><td> Comments are read completely</td></tr>
<tr><td> ERAR_NO_MEMORY </td><td> Not enough memory to extract comments</td></tr>
<tr><td> ERAR_BAD_DATA </td><td> Broken comment</td></tr>
<tr><td> ERAR_SMALL_BUF </td><td> Buffer is too small, comments are not read completely.</td></tr>
</table>
</blockquote>
</ul>
<h3>See also</h3>
<blockquote>
<a href="RAROpenArchive.htm">RAROpenArchive</a> function.
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,194 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>RAROpenArchiveDataEx structure</h3>
<pre>
struct RAROpenArchiveDataEx
{
char *ArcName;
wchar_t *ArcNameW;
unsigned int OpenMode;
unsigned int OpenResult;
char *CmtBuf;
unsigned int CmtBufSize;
unsigned int CmtSize;
unsigned int CmtState;
unsigned int Flags;
UNRARCALLBACK Callback;
LPARAM UserData;
unsigned int Reserved[28];
};
</pre>
<h3>Description</h3>
<p>This structure is used by <a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a>
function.</p>
<h3>Structure fields</h3>
<ul>
<li>
<i>ArcName</i>
<blockquote>
Input parameter which should point to zero terminated string
containing the archive name or NULL if only Unicode name is specified.
</blockquote>
<li>
<i>ArcNameW</i>
<blockquote>
Input parameter which should point to zero terminated Unicode string
containing the archive name or NULL if Unicode name is not specified.
</blockquote>
<li>
<i>OpenMode</i>
<blockquote>
<p>Input parameter.</p>
<p>Possible values</p>
<ul>
<li>
<b>RAR_OM_LIST</b>
<p>Open archive for reading file headers only.</p>
<li>
<b>RAR_OM_EXTRACT</b>
<p>Open archive for testing and extracting files.</p>
<li>
<b>RAR_OM_LIST_INCSPLIT</b>
<p>Open archive for reading file headers only. If you open an archive
in such mode, RARReadHeader[Ex] will return all file headers,
including those with "file continued from previous volume" flag.
In case of RAR_OM_LIST such headers are automatically skipped.
So if you process RAR volumes in RAR_OM_LIST_INCSPLIT mode, you will
get several file header records for same file if file is split between
volumes. For such files only the last file header record will contain
the correct file CRC and if you wish to get the correct packed size,
you need to sum up packed sizes of all parts.</p>
</ul>
</blockquote>
<li>
<i>OpenResult</i>
<blockquote>
<p>Output parameter.</p>
<p>Possible values:</p>
<table border=1>
<tr><td> 0 </td><td> Success</td></tr>
<tr><td> ERAR_NO_MEMORY </td><td> Not enough memory to initialize data structures</td></tr>
<tr><td> ERAR_BAD_DATA </td><td> Archive header broken</td></tr>
<tr><td> ERAR_UNKNOWN_FORMAT </td><td> Unknown encryption used for archive headers </td></tr>
<tr><td> ERAR_EOPEN </td><td> File open error</td></tr>
<tr><td> ERAR_BAD_PASSWORD </td>
<td>Entered password is invalid. This code is returned only for archives
in RAR 5.0 format</td></tr>
</table>
</blockquote>
<li>
<i>CmtBuf</i>
<blockquote>
Input parameter which should point to the buffer for archive
comments. Maximum comment size is limited to 64Kb. Comment text is
zero terminated. If the comment text is larger than the buffer
size, the comment text will be truncated. If CmtBuf is set to
NULL, comments will not be read.
</blockquote>
<li>
<i>CmtBufSize</i>
<blockquote>
Input parameter which should contain size of buffer for archive
comments.
</blockquote>
<li>
<i>CmtSize</i>
<blockquote>
Output parameter containing size of comments actually read into the
buffer, cannot exceed CmtBufSize.
</blockquote>
<li>
<i>CmtState</i>
<blockquote>
<p>Output parameter.</p>
<p>Possible values:</p>
<table border=1>
<tr><td> 0 </td><td> Comments are not present</td></tr>
<tr><td> 1 </td><td> Comments are read completely</td></tr>
<tr><td> ERAR_NO_MEMORY </td><td> Not enough memory to extract comments</td></tr>
<tr><td> ERAR_BAD_DATA </td><td> Broken comment</td></tr>
<tr><td> ERAR_SMALL_BUF </td><td> Buffer is too small, comments are not read completely.</td></tr>
</table>
</blockquote>
<li>
<i>Flags</i>
<blockquote>
<p>Output parameter. Combination of bit flags..</p>
<p>Possible values:</p>
<table border=1>
<tr><td> 0x0001 </td><td> Volume attribute (archive volume)</td></tr>
<tr><td> 0x0002 </td><td> Archive comment present</td></tr>
<tr><td> 0x0004 </td><td> Archive lock attribute</td></tr>
<tr><td> 0x0008 </td><td> Solid attribute (solid archive)</td></tr>
<tr><td> 0x0010 </td><td> New volume naming scheme ('volname.partN.rar')</td></tr>
<tr><td> 0x0020 </td><td> Authenticity information present</td></tr>
<tr><td> 0x0040 </td><td> Recovery record present</td></tr>
<tr><td> 0x0080 </td><td> Block headers are encrypted</td></tr>
<tr><td> 0x0100 </td><td> First volume (set only by RAR 3.0 and later)</td></tr>
</table>
</blockquote>
<li>
<i>Callback</i>
<blockquote>
<p>Address of <a href="RARCallback.htm">user defined callback function</a>
to process UnRAR events.</p>
<p>Set it to NULL if you do not want to define the callback function.
Callback function is required to process multivolume and encrypted
archives properly.</p>
</blockquote>
<li>
<i>UserData</i>
<blockquote>
<p>User defined value, which will be passed to
<a href="RARCallback.htm">callback function.</a></p>
</blockquote>
<li>
<i>Reserved[28]</i>
<blockquote>
<p>Reserved for future use. Must be zero.</p>
</blockquote>
</ul>
<h3>See also</h3>
<blockquote>
<a href="RAROpenArchive.htm">RAROpenArchiveEx</a> function.<br>
<a href="RARCallback.htm">User defined callback function</a>
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,38 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>HANDLE PASCAL RAROpenArchiveEx(struct RAROpenArchiveDataEx *ArchiveData)</h3>
<h3>Description</h3>
<p>Open RAR archive and allocate memory structures. Replaces the obsolete
<a href="RAROpenArchive.htm">RAROpenArchive</a> providing more options
and Unicode names support.
</p>
<h3>Parameters</h3>
<i>ArchiveData</i>
<blockquote>
Points to <a href="RAROpenArchiveDataEx.htm">RAROpenArchiveDataEx structure</a>.
</blockquote>
<h3>Return values</h3>
<blockquote>
Archive handle or NULL in case of error.
</blockquote>
<h3>See also</h3>
<blockquote>
<a href="RAROpenArchiveDataEx.htm">RAROpenArchiveDataEx</a> structure.
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,118 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>
int PASCAL RARProcessFile(HANDLE hArcData,int Operation,char *DestPath,char *DestName)</h3>
<h3>Description</h3>
<p>Performs the user defined action and moves the current position
in the archive to the next file.</p>
<p>If archive is opened in RAR_OM_EXTRACT mode, this function extracts
or tests the current file and sets the archive position to the next file.</p>
<p>If open mode is RAR_OM_LIST, then a call to this function will skip
the current file and set the archive position to the next file.</p>
<p>It is recommended to use <a href="RARProcessFileW.htm">RARProcessFileW</a>
insted of this function, because RARProcessFileW supports Unicode.</p>
<h3>Parameters</h3>
<i>hArcData</i>
<blockquote>
This parameter should contain the archive handle obtained from
<a href="RAROpenArchive.htm">RAROpenArchive</a> or
<a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a> function call.
</blockquote>
<i>Operation</i>
<blockquote>
<p>File operation.</p>
<p>Possible values</p>
<table border="1">
<tr>
<td>RAR_SKIP</td>
<td>Move to the next file in the archive. If archive is solid
and RAR_OM_EXTRACT mode was set when the archive was opened,
the current file is analyzed and operation is performed slower
than a simple seek.</td>
</tr><tr>
<td>RAR_TEST</td>
<td>Test the current file and move to the next file in the archive.
If the archive was opened in RAR_OM_LIST mode, the operation
is equal to RAR_SKIP.</td>
</tr><tr>
<td>RAR_EXTRACT</td>
<td>Extract the current file and move to the next file in the archive.
If the archive was opened with RAR_OM_LIST mode, the operation
is equal to RAR_SKIP.</td>
</tr>
</table>
</blockquote>
<i>DestPath</i>
<blockquote>
<p>This parameter should point to a zero terminated string, containing
the destination directory to place the extracted files to. If DestPath
is equal to NULL, it means extracting to the current directory.
This parameter has meaning only if DestName is NULL.</p>
<p>This parameter must be in OEM encoding. If necessary, use CharToOem
to convert text to OEM before passing it as DestPath.</p>
</blockquote>
<i>DestName</i>
<blockquote>
<p>This parameter should point to a zero terminated string, containing
the full path and name to assign to extracted file or it can be NULL
to use the default name. If DestName is defined (not NULL),
it overrides both the original file name stored in the archive
and path specified in DestPath setting.</p>
<p>This parameter must be in OEM encoding. If necessary, use CharToOem
to convert text to OEM before passing it as DestName.</p>
</blockquote>
<h3>Return values</h3>
<blockquote>
<table border="1">
<tr><td> 0 </td><td> Success </td></tr>
<tr><td> ERAR_BAD_DATA </td><td> File CRC error </td></tr>
<tr><td> ERAR_UNKNOWN_FORMAT </td><td> Unknown archive format </td></tr>
<tr><td> ERAR_EOPEN </td><td> Volume open error </td></tr>
<tr><td> ERAR_ECREATE </td><td> File create error </td></tr>
<tr><td> ERAR_ECLOSE </td><td> File close error </td></tr>
<tr><td> ERAR_EREAD </td><td> Read error </td></tr>
<tr><td> ERAR_EWRITE </td><td> Write error </td></tr>
<tr><td> ERAR_NO_MEMORY </td><td> Not enough memory</td></tr>
<tr><td> ERAR_EREFERENCE </td>
<td>When attempting to unpack a reference record (see RAR -oi switch),
source file for this reference was not found. Entire archive needs to be
unpacked to properly create file references. This error is returned when
attempting to unpack the reference record without its source file.</td></tr>
<tr><td> ERAR_BAD_PASSWORD </td>
<td>Entered password is invalid. This code is returned only for archives
in RAR 5.0 format</td></tr>
</table>
</blockquote>
<h3>Notes</h3>
<blockquote>
If you wish to cancel extraction, return -1 when processing UCM_PROCESSDATA
message in <a href="RARCallback.htm">user defined callback function</a>.
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,109 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>int PASCAL RARProcessFileW(HANDLE hArcData,int Operation,wchar_t *DestPath,wchar_t *DestName)</h3>
<h3>Description</h3>
<p>Performs the user defined action and moves the current position
in the archive to the next file.</p>
<p>If archive is opened in RAR_OM_EXTRACT mode, this function extracts
or tests the current file and sets the archive position to the next file.</p>
<p>If open mode is RAR_OM_LIST, then a call to this function will skip
the current file and set the archive position to the next file.</p>
<h3>Parameters</h3>
<i>hArcData</i>
<blockquote>
This parameter should contain the archive handle obtained from
<a href="RAROpenArchive.htm">RAROpenArchive</a> or
<a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a> function call.
</blockquote>
<i>Operation</i>
<blockquote>
<p>File operation.</p>
<p>Possible values</p>
<table border="1">
<tr>
<td>RAR_SKIP</td>
<td>Move to the next file in the archive. If archive is solid
and RAR_OM_EXTRACT mode was set when the archive was opened,
the current file is analyzed and operation is performed slower
than a simple seek.</td>
</tr><tr>
<td>RAR_TEST</td>
<td>Test the current file and move to the next file in the archive.
If the archive was opened in RAR_OM_LIST mode, the operation
is equal to RAR_SKIP.</td>
</tr><tr>
<td>RAR_EXTRACT</td>
<td>Extract the current file and move to the next file in the archive.
If the archive was opened with RAR_OM_LIST mode, the operation
is equal to RAR_SKIP.</td>
</tr>
</table>
</blockquote>
<i>DestPath</i>
<blockquote>
<p>This parameter should point to a zero terminated Unicode string,
containing the destination directory to place the extracted files to.
If DestPath is equal to NULL, it means extracting to the current directory.
This parameter has meaning only if DestName is NULL.</p>
</blockquote>
<i>DestName</i>
<blockquote>
<p>This parameter should point to a zero terminated Unicode string,
containing the full path and name to assign to extracted file
or it can be NULL to use the default name. If DestName is defined
(not NULL), it overrides both the original file name stored
in the archive and path specified in DestPath setting.</p>
</blockquote>
<h3>Return values</h3>
<blockquote>
<table border="1">
<tr><td> 0 </td><td> Success </td></tr>
<tr><td> ERAR_BAD_DATA </td><td> File CRC error </td></tr>
<tr><td> ERAR_UNKNOWN_FORMAT </td><td> Unknown archive format </td></tr>
<tr><td> ERAR_EOPEN </td><td> Volume open error </td></tr>
<tr><td> ERAR_ECREATE </td><td> File create error </td></tr>
<tr><td> ERAR_ECLOSE </td><td> File close error </td></tr>
<tr><td> ERAR_EREAD </td><td> Read error </td></tr>
<tr><td> ERAR_EWRITE </td><td> Write error </td></tr>
<tr><td> ERAR_NO_MEMORY </td><td> Not enough memory</td></tr>
<tr><td> ERAR_EREFERENCE </td>
<td>When attempting to unpack a reference record (see RAR -oi switch),
source file for this reference was not found. Entire archive needs to be
unpacked to properly create file references. This error is returned when
attempting to unpack the reference record without its source file.</td></tr>
<tr><td> ERAR_BAD_PASSWORD </td>
<td>Entered password is invalid. This code is returned only for archives
in RAR 5.0 format</td></tr>
</table>
</blockquote>
<h3>Notes</h3>
<blockquote>
If you wish to cancel extraction, return -1 when processing UCM_PROCESSDATA
message in <a href="RARCallback.htm">user defined callback function</a>.
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,51 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>int PASCAL RARReadHeader(HANDLE hArcData,struct RARHeaderData *HeaderData)</h3>
<h3>Description</h3>
<p>Read a file header from archive.</p>
<p>This function is obsolete. It does not support Unicode names
and 64 bit file sizes. It is recommended to use
<a href="RARReadHeaderEx.htm">RARReadHeaderEx</a> instead.<p>
<h3>Parameters</h3>
<i>hArcData</i>
<blockquote>
This parameter should contain the archive handle obtained from
<a href="RAROpenArchive.htm">RAROpenArchive</a> or
<a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a> function call.
</blockquote>
<i>HeaderData</i>
<blockquote>
Points to <a href="RARHeaderData.htm">RARHeaderData structure</a>.
</blockquote>
<h3>Return values</h3>
<blockquote>
<table border="1">
<tr><td>0</td><td>Success</td></tr>
<tr><td>ERAR_END_ARCHIVE</td><td>End of archive</td></tr>
<tr><td>ERAR_BAD_DATA</td><td>File header broken</td></tr>
<tr><td>ERAR_MISSING_PASSWORD</td><td>Password was not provided
for encrypted file header</td></tr>
</table>
</blockquote>
<h3>See also</h3>
<blockquote>
<a href="RARHeaderData.htm">RARHeaderData</a> structure.
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,48 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>int PASCAL RARReadHeaderEx(HANDLE hArcData,struct RARHeaderDataEx *HeaderData)</h3>
<h3>Description</h3>
<p>Read a file header from archive.</p>
<h3>Parameters</h3>
<i>hArcData</i>
<blockquote>
This parameter should contain the archive handle obtained from
<a href="RAROpenArchive.htm">RAROpenArchive</a> or
<a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a> function call.
</blockquote>
<i>HeaderData</i>
<blockquote>
Points to <a href="RARHeaderDataEx.htm">RARHeaderDataEx structure</a>.
</blockquote>
<h3>Return values</h3>
<blockquote>
<table border="1">
<tr><td>0</td><td>Success</td></tr>
<tr><td>ERAR_END_ARCHIVE</td><td>End of archive</td></tr>
<tr><td>ERAR_BAD_DATA</td><td>File header broken</td></tr>
<tr><td>ERAR_MISSING_PASSWORD</td><td>Password was not provided
for encrypted file header</td></tr>
</table>
</blockquote>
<h3>See also</h3>
<blockquote>
<a href="RARHeaderDataEx.htm">RARHeaderDataEx</a> structure.
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,64 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>void PASCAL RARSetCallback(HANDLE hArcData,
int PASCAL (*Callback)(UINT msg,LPARAM UserData,LPARAM P1,LPARAM P2),
LPARAM UserData)</h3>
<h3>Description</h3>
<p>Set a <a href="RARCallback.htm">user defined callback function</a>
to process UnRAR events.</p>
<p>RARSetCallback is obsolete and less preferable way to specify the callback
function. Recommended approach is to set <i>Callback</i> and <i>UserData</i>
fields in <a href="RAROpenArchiveDataEx.htm">RAROpenArchiveDataEx</a>
structure, when calling <a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a>.
If you use RARSetCallback, you will not be able to read the archive comment
in archives with encrypted headers. If you do not need the archive comment,
you can continue to use RARSetCallback.</p>
<h3>Parameters</h3>
<i>hArcData</i>
<blockquote>
This parameter should contain the archive handle obtained from
<a href="RAROpenArchive.htm">RAROpenArchive</a> or
<a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a> function call.
</blockquote>
<i>Callback</i>
<blockquote>
<p>Address of <a href="RARCallback.htm">user defined callback function</a>
to process UnRAR events.</p>
<p>Set it to NULL if you do not want to define the callback function.
Callback function is required to process multivolume and encrypted
archives properly.</p>
</blockquote>
<i>UserData</i>
<blockquote>
<p>User defined value, which will be passed to
<a href="RARCallback.htm">callback function.</a></p>
</blockquote>
<h3>Return values</h3>
<blockquote>
None.
</blockquote>
<h3>See also</h3>
<blockquote>
<a href="RARCallback.htm">User defined callback function</a>
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,21 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>
void PASCAL RARSetChangeVolProc(HANDLE hArcData,
int PASCAL (*ChangeVolProc)(char *ArcName,int Mode))
</h3>
<h3>Description</h3>
Obsolete. Use <a href="RARCallback.htm">the callback function</a> instead.
</body>
</html>

View File

@@ -0,0 +1,49 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>void PASCAL RARSetPassword(HANDLE hArcData,char *Password)</h3>
<h3>Description</h3>
<p>Set a password to decrypt files.</p>
<p>This function does not allow to process archives with encrypted headers.
It can be used only for archives with encrypted file data and unencrypted
headers. So the recommended way to set a password is UCM_NEEDPASSWORDW
message in <a href="RARCallback.htm">user defined callback function</a>.
Unlike RARSetPassword, UCM_NEEDPASSWORDW can be used for all types of
encrypted RAR archives.</p>
<h3>Parameters</h3>
<i>hArcData</i>
<blockquote>
This parameter should contain the archive handle obtained from
<a href="RAROpenArchive.htm">RAROpenArchive</a> or
<a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a> function call.
</blockquote>
<i>Password</i>
<blockquote>
Zero terminated string containing a password.
</blockquote>
<h3>Return values</h3>
<blockquote>
None.
</blockquote>
<h3>See also</h3>
<blockquote>
<a href="RARCallback.htm">User defined callback function</a>
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,21 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h3>
void PASCAL RARSetProcessDataProc(HANDLE hArcData,
int PASCAL (*ProcessDataProc)(unsigned char *Addr,int Size))
</h3>
<h3>Description</h3>
Obsolete. Use <a href="RARCallback.htm">the callback function</a> instead.
</body>
</html>

View File

@@ -0,0 +1,40 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UnRAR.dll Manual</title>
</head>
<body>
<h2>UnRAR.dll decompression library</h2>
<b><p><a href="Introduction.htm">Introduction</a><p></b>
<a name="functions"></a>
<h3>Functions</h3>
<blockquote>
<a href="RAROpenArchive.htm">RAROpenArchive</a><br>
<a href="RAROpenArchiveEx.htm">RAROpenArchiveEx</a><br>
<a href="RARCloseArchive.htm">RARCloseArchive</a><br>
<a href="RARReadHeader.htm">RARReadHeader</a><br>
<a href="RARReadHeaderEx.htm">RARReadHeaderEx</a><br>
<a href="RARProcessFile.htm">RARProcessFile</a><br>
<a href="RARProcessFileW.htm">RARProcessFileW</a><br>
<a href="RARSetCallback.htm">RARSetCallback</a><br>
<a href="RARSetChangeVolProc.htm">RARSetChangeVolProc</a><br>
<a href="RARSetProcessDataProc.htm">RARSetProcessDataProc</a><br>
<a href="RARSetPassword.htm">RARSetPassword</a><br>
<a href="RARGetDllVersion.htm">RARGetDllVersion</a><br>
</blockquote>
<h3>Structures</h3>
<blockquote>
<a href="RAROpenArchiveData.htm">RAROpenArchiveData</a><br>
<a href="RAROpenArchiveDataEx.htm">RAROpenArchiveDataEx</a><br>
<a href="RARHeaderData.htm">RARHeaderData</a><br>
<a href="RARHeaderDataEx.htm">RARHeaderDataEx</a><br>
</blockquote>
</body>
</html>