unrarsrc
6.1.7
About: unrar extracts, views and tests the contents of archives created with the RAR archiver.
![]() ![]() |
Go to the source code of this file.
Classes | |
struct | RARHeaderData |
struct | RARHeaderDataEx |
struct | RAROpenArchiveData |
struct | RAROpenArchiveDataEx |
Typedefs | |
typedef int(CALLBACK * | UNRARCALLBACK) (UINT msg, LPARAM UserData, LPARAM P1, LPARAM P2) |
typedef int(PASCAL * | CHANGEVOLPROC) (char *ArcName, int Mode) |
typedef int(PASCAL * | PROCESSDATAPROC) (unsigned char *Addr, int Size) |
Enumerations | |
enum | UNRARCALLBACK_MESSAGES { UCM_CHANGEVOLUME , UCM_PROCESSDATA , UCM_NEEDPASSWORD , UCM_CHANGEVOLUMEW , UCM_NEEDPASSWORDW } |
Functions | |
HANDLE PASCAL | RAROpenArchive (struct RAROpenArchiveData *ArchiveData) |
HANDLE PASCAL | RAROpenArchiveEx (struct RAROpenArchiveDataEx *ArchiveData) |
int PASCAL | RARCloseArchive (HANDLE hArcData) |
int PASCAL | RARReadHeader (HANDLE hArcData, struct RARHeaderData *HeaderData) |
int PASCAL | RARReadHeaderEx (HANDLE hArcData, struct RARHeaderDataEx *HeaderData) |
int PASCAL | RARProcessFile (HANDLE hArcData, int Operation, char *DestPath, char *DestName) |
int PASCAL | RARProcessFileW (HANDLE hArcData, int Operation, wchar_t *DestPath, wchar_t *DestName) |
void PASCAL | RARSetCallback (HANDLE hArcData, UNRARCALLBACK Callback, LPARAM UserData) |
void PASCAL | RARSetChangeVolProc (HANDLE hArcData, CHANGEVOLPROC ChangeVolProc) |
void PASCAL | RARSetProcessDataProc (HANDLE hArcData, PROCESSDATAPROC ProcessDataProc) |
void PASCAL | RARSetPassword (HANDLE hArcData, char *Password) |
int PASCAL | RARGetDllVersion () |
typedef int(PASCAL * CHANGEVOLPROC) (char *ArcName, int Mode) |
typedef int(PASCAL * PROCESSDATAPROC) (unsigned char *Addr, int Size) |
typedef int(CALLBACK * UNRARCALLBACK) (UINT msg, LPARAM UserData, LPARAM P1, LPARAM P2) |
int PASCAL RARCloseArchive | ( | HANDLE | hArcData | ) |
Definition at line 168 of file dll.cpp.
References DataSet::Arc, File::Close(), DataSet::Cmd, ERAR_ECLOSE, ERAR_SUCCESS, and RarErrorToDll().
int PASCAL RARGetDllVersion | ( | ) |
Definition at line 466 of file dll.cpp.
References RAR_DLL_VERSION.
HANDLE PASCAL RAROpenArchive | ( | struct RAROpenArchiveData * | ArchiveData | ) |
Definition at line 17 of file dll.cpp.
References RAROpenArchiveData::ArcName, RAROpenArchiveDataEx::ArcName, RAROpenArchiveData::CmtBuf, RAROpenArchiveDataEx::CmtBuf, RAROpenArchiveData::CmtBufSize, RAROpenArchiveDataEx::CmtBufSize, RAROpenArchiveData::CmtSize, RAROpenArchiveDataEx::CmtSize, RAROpenArchiveData::CmtState, RAROpenArchiveDataEx::CmtState, RAROpenArchiveData::OpenMode, RAROpenArchiveDataEx::OpenMode, RAROpenArchiveData::OpenResult, RAROpenArchiveDataEx::OpenResult, and RAROpenArchiveEx().
HANDLE PASCAL RAROpenArchiveEx | ( | struct RAROpenArchiveDataEx * | ArchiveData | ) |
Definition at line 33 of file dll.cpp.
References CommandData::AddArcName(), StringList::AddString(), DataSet::Arc, RAROpenArchiveDataEx::ArcName, RAROpenArchiveDataEx::ArcNameW, ASIZE, RAROpenArchiveDataEx::Callback, ErrorHandler::Clean(), DataSet::Cmd, RAROpenArchiveDataEx::CmtBuf, RAROpenArchiveDataEx::CmtBufSize, RAROpenArchiveDataEx::CmtBufW, RAROpenArchiveDataEx::CmtSize, RAROpenArchiveDataEx::CmtState, Archive::Encrypted, ERAR_BAD_ARCHIVE, ERAR_EOPEN, ERAR_NO_MEMORY, ERAR_SMALL_BUF, ErrHandler, DataSet::Extract, CmdExtract::ExtractArchiveInit(), CommandData::FileArgs, Archive::FirstVolume, RAROpenArchiveDataEx::Flags, FMF_OPENSHARED, Archive::GetComment(), ErrorHandler::GetErrorCode(), GetWideName(), Archive::IsArchive(), RAROptions::KeepBroken, Archive::Locked, Archive::MainComment, Min, Archive::NewNumbering, File::Open(), DataSet::OpenMode, RAROpenArchiveDataEx::OpenMode, RAROpenArchiveDataEx::OpenResult, RAROptions::OpenShared, RAROpenArchiveDataEx::OpFlags, RAROptions::Overwrite, OVERWRITE_ALL, Archive::Protected, Array< T >::Push(), RarErrorToDll(), RARX_SUCCESS, RARX_WARNING, ROADF_COMMENT, ROADF_ENCHEADERS, ROADF_FIRSTVOLUME, ROADF_LOCK, ROADF_NEWNUMBERING, ROADF_RECOVERY, ROADF_SIGNED, ROADF_SOLID, ROADF_VOLUME, ROADOF_KEEPBROKEN, Archive::Signed, Array< T >::Size(), Archive::Solid, strncpyz(), RAROpenArchiveDataEx::UserData, RAROptions::VersionControl, Archive::Volume, and WideToChar().
Referenced by RAROpenArchive().
int PASCAL RARProcessFile | ( | HANDLE | hArcData, |
int | Operation, | ||
char * | DestPath, | ||
char * | DestName | ||
) |
int PASCAL RARProcessFileW | ( | HANDLE | hArcData, |
int | Operation, | ||
wchar_t * | DestPath, | ||
wchar_t * | DestName | ||
) |
Definition at line 426 of file dll.cpp.
References ProcessFile().
int PASCAL RARReadHeader | ( | HANDLE | hArcData, |
struct RARHeaderData * | HeaderData | ||
) |
Definition at line 184 of file dll.cpp.
References RARHeaderDataEx::ArcName, RARHeaderData::ArcName, ASIZE, RARHeaderData::CmtSize, RARHeaderData::CmtState, RARHeaderData::FileAttr, RARHeaderDataEx::FileAttr, RARHeaderData::FileCRC, RARHeaderDataEx::FileCRC, RARHeaderDataEx::FileName, RARHeaderData::FileName, RARHeaderData::FileTime, RARHeaderDataEx::FileTime, RARHeaderData::Flags, RARHeaderDataEx::Flags, RARHeaderData::HostOS, RARHeaderDataEx::HostOS, RARHeaderData::Method, RARHeaderDataEx::Method, RARHeaderData::PackSize, RARHeaderDataEx::PackSize, RARReadHeaderEx(), strncpyz(), RARHeaderData::UnpSize, RARHeaderDataEx::UnpSize, RARHeaderData::UnpVer, and RARHeaderDataEx::UnpVer.
int PASCAL RARReadHeaderEx | ( | HANDLE | hArcData, |
struct RARHeaderDataEx * | HeaderData | ||
) |
Definition at line 209 of file dll.cpp.
References DataSet::Arc, RARHeaderDataEx::ArcName, RARHeaderDataEx::ArcNameW, ASIZE, FileHeader::atime, RARHeaderDataEx::AtimeHigh, RARHeaderDataEx::AtimeLow, BLAKE2_DIGEST_SIZE, Archive::BrokenHeader, DataSet::Cmd, RARHeaderDataEx::CmtSize, RARHeaderDataEx::CmtState, HashValue::CRC32, FileHeader::ctime, RARHeaderDataEx::CtimeHigh, RARHeaderDataEx::CtimeLow, Archive::CurBlockPos, RARHeaderDataEx::DictSize, HashValue::Digest, FileHeader::Dir, RARHeaderDataEx::DirTarget, FileHeader::DirTarget, FileHeader::Encrypted, Archive::EndArcHead, ERAR_BAD_DATA, ERAR_BAD_PASSWORD, ERAR_END_ARCHIVE, ERAR_EOPEN, ERAR_SUCCESS, Archive::FailedHeaderDecryption, RARHeaderDataEx::FileAttr, FileHeader::FileAttr, RARHeaderDataEx::FileCRC, FileHeader::FileHash, Archive::FileHead, RARHeaderDataEx::FileName, File::FileName, FileHeader::FileName, RARHeaderDataEx::FileNameW, RARHeaderDataEx::FileTime, RARHeaderDataEx::Flags, FSREDIR_NONE, RarTime::GetDos(), Archive::GetHeaderType(), RarTime::GetWin(), RARHeaderDataEx::Hash, HASH_BLAKE2, HASH_CRC32, HASH_RAR14, RARHeaderDataEx::HashType, HEAD_ENDARC, HEAD_FILE, DataSet::HeaderSize, HOST_UNIX, HOST_WIN32, RARHeaderDataEx::HostOS, FileHeader::HSType, HSYS_WINDOWS, MergeArchive(), RARHeaderDataEx::Method, FileHeader::Method, FileHeader::mtime, RARHeaderDataEx::MtimeHigh, RARHeaderDataEx::MtimeLow, EndArcHeader::NextVolume, DataSet::OpenMode, RARHeaderDataEx::PackSize, FileHeader::PackSize, RARHeaderDataEx::PackSizeHigh, RAR_HASH_BLAKE2, RAR_HASH_CRC32, RAR_HASH_NONE, RAR_OM_LIST, RAR_SKIP, RarErrorToDll(), RARProcessFile(), RARReadHeaderEx(), RARHeaderDataEx::RedirName, FileHeader::RedirName, RARHeaderDataEx::RedirNameSize, RARHeaderDataEx::RedirType, FileHeader::RedirType, RHDF_DIRECTORY, RHDF_ENCRYPTED, RHDF_SOLID, RHDF_SPLITAFTER, RHDF_SPLITBEFORE, Archive::SearchBlock(), File::Seek(), FileHeader::Solid, FileHeader::SplitAfter, FileHeader::SplitBefore, HashValue::Type, RARHeaderDataEx::UnpSize, FileHeader::UnpSize, RARHeaderDataEx::UnpSizeHigh, RARHeaderDataEx::UnpVer, FileHeader::UnpVer, Archive::Volume, wcsncpyz(), WideToChar(), and FileHeader::WinSize.
Referenced by RARReadHeader(), and RARReadHeaderEx().
void PASCAL RARSetCallback | ( | HANDLE | hArcData, |
UNRARCALLBACK | Callback, | ||
LPARAM | UserData | ||
) |
Definition at line 439 of file dll.cpp.
References DataSet::Cmd.
void PASCAL RARSetChangeVolProc | ( | HANDLE | hArcData, |
CHANGEVOLPROC | ChangeVolProc | ||
) |
Definition at line 432 of file dll.cpp.
References DataSet::Cmd.
void PASCAL RARSetPassword | ( | HANDLE | hArcData, |
char * | Password | ||
) |
Definition at line 454 of file dll.cpp.
References ASIZE, cleandata(), DataSet::Cmd, GetWideName(), MAXPASSWORD, RAROptions::Password, and SecPassword::Set().
void PASCAL RARSetProcessDataProc | ( | HANDLE | hArcData, |
PROCESSDATAPROC | ProcessDataProc | ||
) |
Definition at line 447 of file dll.cpp.
References DataSet::Cmd.