mirror of
https://github.com/Xevion/easy7zip.git
synced 2025-12-17 10:11:48 -06:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7e021179cd | ||
|
|
0dc16c691d |
@@ -1,9 +1,9 @@
|
|||||||
#define MY_VER_MAJOR 9
|
#define MY_VER_MAJOR 9
|
||||||
#define MY_VER_MINOR 34
|
#define MY_VER_MINOR 36
|
||||||
#define MY_VER_BUILD 00
|
#define MY_VER_BUILD 00
|
||||||
#define MY_VERSION "9.34 alpha"
|
#define MY_VERSION "9.36 beta"
|
||||||
// #define MY_7ZIP_VERSION "9.34 alpha"
|
// #define MY_7ZIP_VERSION "9.36"
|
||||||
#define MY_DATE "2014-06-22"
|
#define MY_DATE "2014-12-26"
|
||||||
#undef MY_COPYRIGHT
|
#undef MY_COPYRIGHT
|
||||||
#undef MY_VERSION_COPYRIGHT_DATE
|
#undef MY_VERSION_COPYRIGHT_DATE
|
||||||
#define MY_COPYRIGHT ": Igor Pavlov : Public domain"
|
#define MY_COPYRIGHT ": Igor Pavlov : Public domain"
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
MY_STATIC_LINK=1
|
# MY_STATIC_LINK=1
|
||||||
CFLAGS = $(CFLAGS) -D_7ZIP_PPMD_SUPPPORT
|
CFLAGS = $(CFLAGS) -D_7ZIP_PPMD_SUPPPORT
|
||||||
|
|
||||||
PROG = 7zDec.exe
|
PROG = 7zDec.exe
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
MY_STATIC_LINK=1
|
# MY_STATIC_LINK=1
|
||||||
PROG = LZMAc.exe
|
PROG = LZMAc.exe
|
||||||
|
|
||||||
CFLAGS = $(CFLAGS) \
|
CFLAGS = $(CFLAGS) \
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* SfxSetup.c - 7z SFX Setup
|
/* SfxSetup.c - 7z SFX Setup
|
||||||
2014-06-15 : Igor Pavlov : Public domain */
|
2014-12-07 : Igor Pavlov : Public domain */
|
||||||
|
|
||||||
#include "Precomp.h"
|
#include "Precomp.h"
|
||||||
|
|
||||||
@@ -21,28 +21,28 @@
|
|||||||
#include "../../7zFile.h"
|
#include "../../7zFile.h"
|
||||||
#include "../../CpuArch.h"
|
#include "../../CpuArch.h"
|
||||||
|
|
||||||
#define k_EXE_ExtIndex 1
|
#define k_EXE_ExtIndex 2
|
||||||
|
|
||||||
static const char *kExts[] =
|
static const char *kExts[] =
|
||||||
{
|
{
|
||||||
"bat",
|
"bat"
|
||||||
"cmd",
|
, "cmd"
|
||||||
"exe",
|
, "exe"
|
||||||
"inf",
|
, "inf"
|
||||||
"msi",
|
, "msi"
|
||||||
#ifdef UNDER_CE
|
#ifdef UNDER_CE
|
||||||
"cab",
|
, "cab"
|
||||||
#endif
|
#endif
|
||||||
"html",
|
, "html"
|
||||||
"htm"
|
, "htm"
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char *kNames[] =
|
static const char *kNames[] =
|
||||||
{
|
{
|
||||||
"setup",
|
"setup"
|
||||||
"install",
|
, "install"
|
||||||
"run",
|
, "run"
|
||||||
"start"
|
, "start"
|
||||||
};
|
};
|
||||||
|
|
||||||
static unsigned FindExt(const wchar_t *s, unsigned *extLen)
|
static unsigned FindExt(const wchar_t *s, unsigned *extLen)
|
||||||
@@ -190,7 +190,7 @@ static WRes RemoveDirWithSubItems(WCHAR *path)
|
|||||||
wcscpy(path + len, fd.cFileName);
|
wcscpy(path + len, fd.cFileName);
|
||||||
if ((fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) != 0)
|
if ((fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) != 0)
|
||||||
{
|
{
|
||||||
wcscat(path, L"\\");
|
wcscat(path, WSTRING_PATH_SEPARATOR);
|
||||||
res = RemoveDirWithSubItems(path);
|
res = RemoveDirWithSubItems(path);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -324,7 +324,7 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
|
|||||||
continue;
|
continue;
|
||||||
if (CreateDirectoryW(path, NULL))
|
if (CreateDirectoryW(path, NULL))
|
||||||
{
|
{
|
||||||
wcscat(path, L"\\");
|
wcscat(path, WSTRING_PATH_SEPARATOR);
|
||||||
pathLen = wcslen(path);
|
pathLen = wcslen(path);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -321,11 +321,16 @@ STDMETHODIMP CHandler::GetRawProp(UInt32 index, PROPID propID, const void **data
|
|||||||
if (/* _db.IsTree && propID == kpidName ||
|
if (/* _db.IsTree && propID == kpidName ||
|
||||||
!_db.IsTree && */ propID == kpidPath)
|
!_db.IsTree && */ propID == kpidPath)
|
||||||
{
|
{
|
||||||
*data = (void *)_db.GetName(index);
|
const wchar_t *name = _db.GetName(index);
|
||||||
if (*data)
|
if (name)
|
||||||
{
|
{
|
||||||
*dataSize = (UInt32)((_db.NameOffsets[index + 1] - _db.NameOffsets[index]) * 2);
|
size_t size = (_db.NameOffsets[index + 1] - _db.NameOffsets[index]) * 2;
|
||||||
*propType = NPropDataType::kUtf16z;
|
if (size < ((UInt32)1 << 31))
|
||||||
|
{
|
||||||
|
*data = (void *)name;
|
||||||
|
*dataSize = (UInt32)size;
|
||||||
|
*propType = NPropDataType::kUtf16z;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return S_OK;
|
return S_OK;
|
||||||
}
|
}
|
||||||
@@ -382,6 +387,13 @@ HRESULT CHandler::SetMethodToProp(CNum folderIndex, PROPVARIANT *prop) const
|
|||||||
for (unsigned j = 0; j < idSize; j++)
|
for (unsigned j = 0; j < idSize; j++)
|
||||||
id64 = ((id64 << 8) | longID[j]);
|
id64 = ((id64 << 8) | longID[j]);
|
||||||
inByte.SkipDataNoCheck(idSize);
|
inByte.SkipDataNoCheck(idSize);
|
||||||
|
|
||||||
|
if ((mainByte & 0x10) != 0)
|
||||||
|
{
|
||||||
|
inByte.ReadNum(); // NumInStreams
|
||||||
|
inByte.ReadNum(); // NumOutStreams
|
||||||
|
}
|
||||||
|
|
||||||
CNum propsSize = 0;
|
CNum propsSize = 0;
|
||||||
const Byte *props = NULL;
|
const Byte *props = NULL;
|
||||||
if ((mainByte & 0x20) != 0)
|
if ((mainByte & 0x20) != 0)
|
||||||
|
|||||||
@@ -9,9 +9,9 @@ STDMETHODIMP CSequentialInStreamWithCRC::Read(void *data, UInt32 size, UInt32 *p
|
|||||||
UInt32 realProcessed = 0;
|
UInt32 realProcessed = 0;
|
||||||
HRESULT result = S_OK;
|
HRESULT result = S_OK;
|
||||||
if (_stream)
|
if (_stream)
|
||||||
_stream->Read(data, size, &realProcessed);
|
result = _stream->Read(data, size, &realProcessed);
|
||||||
_size += realProcessed;
|
_size += realProcessed;
|
||||||
if (size > 0 && realProcessed == 0)
|
if (size != 0 && realProcessed == 0)
|
||||||
_wasFinished = true;
|
_wasFinished = true;
|
||||||
_crc = CrcUpdate(_crc, data, realProcessed);
|
_crc = CrcUpdate(_crc, data, realProcessed);
|
||||||
if (processedSize)
|
if (processedSize)
|
||||||
@@ -27,7 +27,7 @@ STDMETHODIMP CInStreamWithCRC::Read(void *data, UInt32 size, UInt32 *processedSi
|
|||||||
result = _stream->Read(data, size, &realProcessed);
|
result = _stream->Read(data, size, &realProcessed);
|
||||||
_size += realProcessed;
|
_size += realProcessed;
|
||||||
/*
|
/*
|
||||||
if (size > 0 && realProcessed == 0)
|
if (size != 0 && realProcessed == 0)
|
||||||
_wasFinished = true;
|
_wasFinished = true;
|
||||||
*/
|
*/
|
||||||
_crc = CrcUpdate(_crc, data, realProcessed);
|
_crc = CrcUpdate(_crc, data, realProcessed);
|
||||||
|
|||||||
@@ -337,7 +337,7 @@ HRESULT CHandler::Open2(IInStream *stream, IArchiveOpenCallback *callback)
|
|||||||
break;
|
break;
|
||||||
if (items.Size() >= kNumChunksMax)
|
if (items.Size() >= kNumChunksMax)
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
Byte firstByte = buf[kTagHeaderSize];
|
Byte firstByte = item.Data[kTagHeaderSize];
|
||||||
Byte subType, props;
|
Byte subType, props;
|
||||||
if (item.Type == kType_Audio)
|
if (item.Type == kType_Audio)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -322,7 +322,7 @@ STDMETHODIMP CHandler::Extract(const UInt32 *indices, UInt32 numItems,
|
|||||||
if (e != 0)
|
if (e != 0)
|
||||||
lps->InSize = lps->OutSize = currentTotalSize + offset;
|
lps->InSize = lps->OutSize = currentTotalSize + offset;
|
||||||
const CDir &item2 = ref.Dir->_subItems[ref.Index + e];
|
const CDir &item2 = ref.Dir->_subItems[ref.Index + e];
|
||||||
RINOK(_stream->Seek(item2.ExtentLocation * _archive.BlockSize, STREAM_SEEK_SET, NULL));
|
RINOK(_stream->Seek((UInt64)item2.ExtentLocation * _archive.BlockSize, STREAM_SEEK_SET, NULL));
|
||||||
streamSpec->Init(item2.Size);
|
streamSpec->Init(item2.Size);
|
||||||
RINOK(copyCoder->Code(inStream, realOutStream, NULL, NULL, progress));
|
RINOK(copyCoder->Code(inStream, realOutStream, NULL, NULL, progress));
|
||||||
if (copyCoderSpec->TotalSize != item2.Size)
|
if (copyCoderSpec->TotalSize != item2.Size)
|
||||||
|
|||||||
@@ -964,22 +964,21 @@ STDMETHODIMP CHandler::GetProperty(UInt32 index, PROPID propID, PROPVARIANT *val
|
|||||||
case kpidUnpackVer: prop = item.UnPackVersion; break;
|
case kpidUnpackVer: prop = item.UnPackVersion; break;
|
||||||
case kpidMethod:
|
case kpidMethod:
|
||||||
{
|
{
|
||||||
char temp[16];
|
char s[16];
|
||||||
char *s = temp;
|
Byte m = item.Method;
|
||||||
if (item.Method >= (Byte)'0' && item.Method <= (Byte)'5')
|
if (m < (Byte)'0' || m > (Byte)'5')
|
||||||
|
ConvertUInt32ToString(m, s);
|
||||||
|
else
|
||||||
{
|
{
|
||||||
*s++ = 'm';
|
s[0] = 'm';
|
||||||
*s++ = (char)item.Method;
|
s[1] = (char)m;
|
||||||
|
s[2] = 0;
|
||||||
if (!item.IsDir())
|
if (!item.IsDir())
|
||||||
{
|
{
|
||||||
*s++ = ':';
|
s[2] = ':';
|
||||||
ConvertUInt32ToString(16 + item.GetDictSize(), s);
|
ConvertUInt32ToString(16 + item.GetDictSize(), &s[3]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
ConvertUInt32ToString(item.Method, s);
|
|
||||||
s += MyStringLen(s);
|
|
||||||
*s = 0;
|
|
||||||
prop = s;
|
prop = s;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -534,14 +534,15 @@ static HRESULT Update2(
|
|||||||
|
|
||||||
#ifndef _7ZIP_ST
|
#ifndef _7ZIP_ST
|
||||||
|
|
||||||
const size_t kNumMaxThreads = (1 << 10);
|
|
||||||
UInt32 numThreads = options->NumThreads;
|
UInt32 numThreads = options->NumThreads;
|
||||||
|
const UInt32 kNumMaxThreads = 64;
|
||||||
if (numThreads > kNumMaxThreads)
|
if (numThreads > kNumMaxThreads)
|
||||||
numThreads = kNumMaxThreads;
|
numThreads = kNumMaxThreads;
|
||||||
|
if (numThreads > MAXIMUM_WAIT_OBJECTS) // is 64 in Windows (is it 64 in all versions?)
|
||||||
|
numThreads = MAXIMUM_WAIT_OBJECTS;
|
||||||
if (numThreads < 1)
|
if (numThreads < 1)
|
||||||
numThreads = 1;
|
numThreads = 1;
|
||||||
|
|
||||||
|
|
||||||
const size_t kMemPerThread = (1 << 25);
|
const size_t kMemPerThread = (1 << 25);
|
||||||
const size_t kBlockSize = 1 << 16;
|
const size_t kBlockSize = 1 << 16;
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
PROG = 7zr.exe
|
PROG = 7zr.exe
|
||||||
MY_CONSOLE = 1
|
MY_CONSOLE = 1
|
||||||
CFLAGS = $(CFLAGS) \
|
CFLAGS = $(CFLAGS) -DPROG_VARIANT_R
|
||||||
|
|
||||||
!IFNDEF UNDER_CE
|
!IFNDEF UNDER_CE
|
||||||
CFLAGS = $(CFLAGS) -DWIN_LONG_PATH
|
CFLAGS = $(CFLAGS) -DWIN_LONG_PATH
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
#include "../../MyVersionInfo.rc"
|
#include "../../../../C/7zVersion.rc"
|
||||||
|
|
||||||
MY_VERSION_INFO_APP("LZMA", "lzma")
|
MY_VERSION_INFO_APP("LZMA", "lzma")
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
#include "../../MyVersionInfo.rc"
|
#include "../../../../C/7zVersion.rc"
|
||||||
|
|
||||||
MY_VERSION_INFO_APP("7z Console SFX", "7z.sfx")
|
MY_VERSION_INFO_APP("7z Console SFX", "7z.sfx")
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
#include "../../MyVersionInfo.rc"
|
#include "../../../../C/7zVersion.rc"
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
|
|
||||||
MY_VERSION_INFO_APP("7z Setup SFX", "7zS.sfx")
|
MY_VERSION_INFO_APP("7z Setup SFX", "7zS.sfx")
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
#include "../../MyVersionInfo.rc"
|
#include "../../../../C/7zVersion.rc"
|
||||||
#include "../../GuiCommon.rc"
|
#include "../../GuiCommon.rc"
|
||||||
#include "../../UI/GUI/ExtractDialogRes.h"
|
#include "../../UI/GUI/ExtractDialogRes.h"
|
||||||
#include "../../UI/FileManager/PropertyNameRes.h"
|
#include "../../UI/FileManager/PropertyNameRes.h"
|
||||||
|
|||||||
@@ -195,6 +195,8 @@ STDMETHODIMP_(UInt64) CAgentFolder::GetItemSize(UInt32 index)
|
|||||||
const CProxyFolder &item = _proxyArchive->Folders[folder->Folders[realIndex]];
|
const CProxyFolder &item = _proxyArchive->Folders[folder->Folders[realIndex]];
|
||||||
if (!_flatMode)
|
if (!_flatMode)
|
||||||
return item.Size;
|
return item.Size;
|
||||||
|
if (!item.IsLeaf)
|
||||||
|
return 0;
|
||||||
arcIndex = item.Index;
|
arcIndex = item.Index;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
#include "../../MyVersionInfo.rc"
|
#include "../../../../C/7zVersion.rc"
|
||||||
|
|
||||||
MY_VERSION_INFO_APP("7-Zip client", "7zcl")
|
MY_VERSION_INFO_APP("7-Zip client", "7zcl")
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ struct CDirItem
|
|||||||
CByteBuffer ReparseData;
|
CByteBuffer ReparseData;
|
||||||
CByteBuffer ReparseData2; // fixed (reduced) absolute links
|
CByteBuffer ReparseData2; // fixed (reduced) absolute links
|
||||||
|
|
||||||
bool AreReparseData() const { return ReparseData.Size() != 0 || !ReparseData2.Size() != 0; }
|
bool AreReparseData() const { return ReparseData.Size() != 0 || ReparseData2.Size() != 0; }
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
UInt32 Attrib;
|
UInt32 Attrib;
|
||||||
|
|||||||
@@ -1216,10 +1216,10 @@ HRESULT UpdateArchive(
|
|||||||
createTempFile = true;
|
createTempFile = true;
|
||||||
ap.Temp = true;
|
ap.Temp = true;
|
||||||
if (!options.WorkingDir.IsEmpty())
|
if (!options.WorkingDir.IsEmpty())
|
||||||
{
|
|
||||||
ap.TempPrefix = options.WorkingDir;
|
ap.TempPrefix = options.WorkingDir;
|
||||||
NormalizeDirPathPrefix(ap.TempPrefix);
|
else
|
||||||
}
|
ap.TempPrefix = us2fs(ap.Prefix);
|
||||||
|
NormalizeDirPathPrefix(ap.TempPrefix);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -43,11 +43,7 @@
|
|||||||
|
|
||||||
#include "HashCon.h"
|
#include "HashCon.h"
|
||||||
|
|
||||||
#if !defined(EXTERNAL_CODECS) && defined(_NO_CRYPTO)
|
#ifdef PROG_VARIANT_R
|
||||||
#define IT_IS_REDUCED_VERSION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef IT_IS_REDUCED_VERSION
|
|
||||||
#include "../../../../C/7zVersion.h"
|
#include "../../../../C/7zVersion.h"
|
||||||
#else
|
#else
|
||||||
#include "../../MyVersion.h"
|
#include "../../MyVersion.h"
|
||||||
@@ -64,7 +60,7 @@ extern CStdOutStream *g_StdStream;
|
|||||||
|
|
||||||
static const char *kCopyrightString = "\n7-Zip"
|
static const char *kCopyrightString = "\n7-Zip"
|
||||||
#ifndef EXTERNAL_CODECS
|
#ifndef EXTERNAL_CODECS
|
||||||
#ifdef IT_IS_REDUCED_VERSION
|
#ifdef PROG_VARIANT_R
|
||||||
" (r)"
|
" (r)"
|
||||||
#else
|
#else
|
||||||
" (a)"
|
" (a)"
|
||||||
@@ -80,7 +76,7 @@ static const char *kCopyrightString = "\n7-Zip"
|
|||||||
static const char *kHelpString =
|
static const char *kHelpString =
|
||||||
"\nUsage: 7z"
|
"\nUsage: 7z"
|
||||||
#ifndef EXTERNAL_CODECS
|
#ifndef EXTERNAL_CODECS
|
||||||
#ifdef IT_IS_REDUCED_VERSION
|
#ifdef PROG_VARIANT_R
|
||||||
"r"
|
"r"
|
||||||
#else
|
#else
|
||||||
"a"
|
"a"
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
7z ANSI-C Decoder 9.24
|
7z ANSI-C Decoder 9.35
|
||||||
----------------------
|
----------------------
|
||||||
|
|
||||||
7z ANSI-C provides 7z/LZMA decoding.
|
7z ANSI-C provides 7z/LZMA decoding.
|
||||||
@@ -29,11 +29,9 @@ Files
|
|||||||
How To Use
|
How To Use
|
||||||
----------
|
----------
|
||||||
|
|
||||||
You must download 7-Zip program from www.7-zip.org.
|
You can create .7z archive with 7z.exe, 7za.exe or 7zr.exe:
|
||||||
|
|
||||||
You can create .7z archive with 7z.exe or 7za.exe:
|
7z.exe a archive.7z *.htm -r -mx -m0fb=255
|
||||||
|
|
||||||
7za.exe a archive.7z *.htm -r -mx -m0fb=255
|
|
||||||
|
|
||||||
If you have big number of files in archive, and you need fast extracting,
|
If you have big number of files in archive, and you need fast extracting,
|
||||||
you can use partly-solid archives:
|
you can use partly-solid archives:
|
||||||
|
|||||||
@@ -10,8 +10,8 @@ AppName = "7-Zip"
|
|||||||
InstallDir = %CE1%\%AppName%
|
InstallDir = %CE1%\%AppName%
|
||||||
|
|
||||||
[Strings]
|
[Strings]
|
||||||
AppVer = "9.23"
|
AppVer = "9.36"
|
||||||
AppDate = "2011-06-17"
|
AppDate = "2014-12-26"
|
||||||
|
|
||||||
[CEDevice]
|
[CEDevice]
|
||||||
; ProcessorType = 2577 ; ARM
|
; ProcessorType = 2577 ; ARM
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
;Defines
|
;Defines
|
||||||
|
|
||||||
!define VERSION_MAJOR 9
|
!define VERSION_MAJOR 9
|
||||||
!define VERSION_MINOR 34
|
!define VERSION_MINOR 36
|
||||||
!define VERSION_POSTFIX_FULL " alpha"
|
!define VERSION_POSTFIX_FULL " beta"
|
||||||
!ifdef WIN64
|
!ifdef WIN64
|
||||||
!ifdef IA64
|
!ifdef IA64
|
||||||
!define VERSION_SYS_POSTFIX_FULL " for Windows IA-64"
|
!define VERSION_SYS_POSTFIX_FULL " for Windows IA-64"
|
||||||
@@ -315,7 +315,7 @@ noScErrors:
|
|||||||
|
|
||||||
WriteRegStr HKCR "*\shellex\ContextMenuHandlers\7-Zip" "" "${CLSID_CONTEXT_MENU}"
|
WriteRegStr HKCR "*\shellex\ContextMenuHandlers\7-Zip" "" "${CLSID_CONTEXT_MENU}"
|
||||||
WriteRegStr HKCR "Directory\shellex\ContextMenuHandlers\7-Zip" "" "${CLSID_CONTEXT_MENU}"
|
WriteRegStr HKCR "Directory\shellex\ContextMenuHandlers\7-Zip" "" "${CLSID_CONTEXT_MENU}"
|
||||||
; WriteRegStr HKCR "Folder\shellex\ContextMenuHandlers\7-Zip" "" "${CLSID_CONTEXT_MENU}"
|
WriteRegStr HKCR "Folder\shellex\ContextMenuHandlers\7-Zip" "" "${CLSID_CONTEXT_MENU}"
|
||||||
|
|
||||||
WriteRegStr HKCR "Directory\shellex\DragDropHandlers\7-Zip" "" "${CLSID_CONTEXT_MENU}"
|
WriteRegStr HKCR "Directory\shellex\DragDropHandlers\7-Zip" "" "${CLSID_CONTEXT_MENU}"
|
||||||
WriteRegStr HKCR "Drive\shellex\DragDropHandlers\7-Zip" "" "${CLSID_CONTEXT_MENU}"
|
WriteRegStr HKCR "Drive\shellex\DragDropHandlers\7-Zip" "" "${CLSID_CONTEXT_MENU}"
|
||||||
|
|||||||
10
DOC/7zip.wxs
10
DOC/7zip.wxs
@@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<?define VerMajor = "9" ?>
|
<?define VerMajor = "9" ?>
|
||||||
<?define VerMinor = "34" ?>
|
<?define VerMinor = "36" ?>
|
||||||
<?define VerBuild = "00" ?>
|
<?define VerBuild = "00" ?>
|
||||||
<?define MmVer = "$(var.VerMajor).$(var.VerMinor)" ?>
|
<?define MmVer = "$(var.VerMajor).$(var.VerMinor)" ?>
|
||||||
<?define MmHex = "0$(var.VerMajor)$(var.VerMinor)" ?>
|
<?define MmHex = "0$(var.VerMajor)$(var.VerMinor)" ?>
|
||||||
@@ -67,6 +67,7 @@
|
|||||||
<?define CompInstallRegDriveDD = "$(var.CompId)85" ?>
|
<?define CompInstallRegDriveDD = "$(var.CompId)85" ?>
|
||||||
<?define CompInstallRegApproved = "$(var.CompId)86" ?>
|
<?define CompInstallRegApproved = "$(var.CompId)86" ?>
|
||||||
<?define CompInstallRegAppPath = "$(var.CompId)87" ?>
|
<?define CompInstallRegAppPath = "$(var.CompId)87" ?>
|
||||||
|
<?define CompInstallRegFolder = "$(var.CompId)88" ?>
|
||||||
|
|
||||||
|
|
||||||
<?define Manufacturer = "Igor Pavlov" ?>
|
<?define Manufacturer = "Igor Pavlov" ?>
|
||||||
@@ -144,6 +145,12 @@
|
|||||||
Value="$(var.ShellExtId)" />
|
Value="$(var.ShellExtId)" />
|
||||||
</Component>
|
</Component>
|
||||||
|
|
||||||
|
<Component Id="InstallRegFolder" Guid="$(var.CompInstallRegFolder)" DiskId="1" Win64="$(var.Is64)">
|
||||||
|
<Registry Id="MyInstallRegFolder" Action="write" Type="string"
|
||||||
|
Root="HKCR" Key="Folder\shellex\ContextMenuHandlers\7-Zip"
|
||||||
|
Value="$(var.ShellExtId)" />
|
||||||
|
</Component>
|
||||||
|
|
||||||
<Component Id="InstallRegDirDD" Guid="$(var.CompInstallRegDirDD)" DiskId="1" Win64="$(var.Is64)">
|
<Component Id="InstallRegDirDD" Guid="$(var.CompInstallRegDirDD)" DiskId="1" Win64="$(var.Is64)">
|
||||||
<Registry Id="MyInstallRegDirDD" Action="write" Type="string"
|
<Registry Id="MyInstallRegDirDD" Action="write" Type="string"
|
||||||
Root="HKCR" Key="Directory\shellex\DragDropHandlers\7-Zip"
|
Root="HKCR" Key="Directory\shellex\DragDropHandlers\7-Zip"
|
||||||
@@ -366,6 +373,7 @@
|
|||||||
<ComponentRef Id="InstallRegDriveDD" />
|
<ComponentRef Id="InstallRegDriveDD" />
|
||||||
<ComponentRef Id="InstallRegApproved" />
|
<ComponentRef Id="InstallRegApproved" />
|
||||||
<ComponentRef Id="InstallRegAppPath" />
|
<ComponentRef Id="InstallRegAppPath" />
|
||||||
|
<ComponentRef Id="InstallRegFolder" />
|
||||||
|
|
||||||
</Feature>
|
</Feature>
|
||||||
<Feature Id="LanguageFiles" Title="Localization files" Description="Localization files for 71 languages."
|
<Feature Id="LanguageFiles" Title="Localization files" Description="Localization files for 71 languages."
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
License for use and distribution
|
License for use and distribution
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
7-Zip Copyright (C) 1999-2010 Igor Pavlov.
|
7-Zip Copyright (C) 1999-2014 Igor Pavlov.
|
||||||
|
|
||||||
Licenses for files are:
|
Licenses for files are:
|
||||||
|
|
||||||
|
|||||||
314
DOC/lzma.txt
314
DOC/lzma.txt
@@ -1,307 +1,18 @@
|
|||||||
LZMA SDK 9.31
|
LZMA compression
|
||||||
-------------
|
----------------
|
||||||
|
Version: 9.35
|
||||||
|
|
||||||
LZMA SDK provides the documentation, samples, header files, libraries,
|
This file describes LZMA encoding and decoding functions written in C language.
|
||||||
and tools you need to develop applications that use LZMA compression.
|
|
||||||
|
|
||||||
LZMA is default and general compression method of 7z format
|
|
||||||
in 7-Zip compression program (www.7-zip.org). LZMA provides high
|
|
||||||
compression ratio and very fast decompression.
|
|
||||||
|
|
||||||
LZMA is an improved version of famous LZ77 compression algorithm.
|
LZMA is an improved version of famous LZ77 compression algorithm.
|
||||||
It was improved in way of maximum increasing of compression ratio,
|
It was improved in way of maximum increasing of compression ratio,
|
||||||
keeping high decompression speed and low memory requirements for
|
keeping high decompression speed and low memory requirements for
|
||||||
decompressing.
|
decompressing.
|
||||||
|
|
||||||
|
Note: you can read also LZMA Specification (lzma-specification.txt from LZMA SDK)
|
||||||
|
|
||||||
|
Also you can look source code for LZMA encoding and decoding:
|
||||||
LICENSE
|
C/Util/Lzma/LzmaUtil.c
|
||||||
-------
|
|
||||||
|
|
||||||
LZMA SDK is written and placed in the public domain by Igor Pavlov.
|
|
||||||
|
|
||||||
Some code in LZMA SDK is based on public domain code from another developers:
|
|
||||||
1) PPMd var.H (2001): Dmitry Shkarin
|
|
||||||
2) SHA-256: Wei Dai (Crypto++ library)
|
|
||||||
|
|
||||||
You can copy, modify, distribute and perform LZMA SDK code, even for commercial purposes,
|
|
||||||
all without asking permission.
|
|
||||||
|
|
||||||
LZMA SDK code is compatible with open source licenses, for example, you can
|
|
||||||
include it to GNU GPL or GNU LGPL code.
|
|
||||||
|
|
||||||
|
|
||||||
LZMA SDK Contents
|
|
||||||
-----------------
|
|
||||||
|
|
||||||
LZMA SDK includes:
|
|
||||||
|
|
||||||
- ANSI-C/C++/C#/Java source code for LZMA compressing and decompressing
|
|
||||||
- Compiled file->file LZMA compressing/decompressing program for Windows system
|
|
||||||
|
|
||||||
|
|
||||||
UNIX/Linux version
|
|
||||||
------------------
|
|
||||||
To compile C++ version of file->file LZMA encoding, go to directory
|
|
||||||
CPP/7zip/Bundles/LzmaCon
|
|
||||||
and call make to recompile it:
|
|
||||||
make -f makefile.gcc clean all
|
|
||||||
|
|
||||||
In some UNIX/Linux versions you must compile LZMA with static libraries.
|
|
||||||
To compile with static libraries, you can use
|
|
||||||
LIB = -lm -static
|
|
||||||
|
|
||||||
|
|
||||||
Files
|
|
||||||
---------------------
|
|
||||||
lzma.txt - LZMA SDK description (this file)
|
|
||||||
7zFormat.txt - 7z Format description
|
|
||||||
7zC.txt - 7z ANSI-C Decoder description
|
|
||||||
methods.txt - Compression method IDs for .7z
|
|
||||||
lzma.exe - Compiled file->file LZMA encoder/decoder for Windows
|
|
||||||
7zr.exe - 7-Zip with 7z/lzma/xz support.
|
|
||||||
history.txt - history of the LZMA SDK
|
|
||||||
|
|
||||||
|
|
||||||
Source code structure
|
|
||||||
---------------------
|
|
||||||
|
|
||||||
C/ - C files
|
|
||||||
7zCrc*.* - CRC code
|
|
||||||
Alloc.* - Memory allocation functions
|
|
||||||
Bra*.* - Filters for x86, IA-64, ARM, ARM-Thumb, PowerPC and SPARC code
|
|
||||||
LzFind.* - Match finder for LZ (LZMA) encoders
|
|
||||||
LzFindMt.* - Match finder for LZ (LZMA) encoders for multithreading encoding
|
|
||||||
LzHash.h - Additional file for LZ match finder
|
|
||||||
LzmaDec.* - LZMA decoding
|
|
||||||
LzmaEnc.* - LZMA encoding
|
|
||||||
LzmaLib.* - LZMA Library for DLL calling
|
|
||||||
Types.h - Basic types for another .c files
|
|
||||||
Threads.* - The code for multithreading.
|
|
||||||
|
|
||||||
LzmaLib - LZMA Library (.DLL for Windows)
|
|
||||||
|
|
||||||
LzmaUtil - LZMA Utility (file->file LZMA encoder/decoder).
|
|
||||||
|
|
||||||
Archive - files related to archiving
|
|
||||||
7z - 7z ANSI-C Decoder
|
|
||||||
|
|
||||||
CPP/ -- CPP files
|
|
||||||
|
|
||||||
Common - common files for C++ projects
|
|
||||||
Windows - common files for Windows related code
|
|
||||||
|
|
||||||
7zip - files related to 7-Zip Project
|
|
||||||
|
|
||||||
Common - common files for 7-Zip
|
|
||||||
|
|
||||||
Compress - files related to compression/decompression
|
|
||||||
|
|
||||||
Archive - files related to archiving
|
|
||||||
|
|
||||||
Common - common files for archive handling
|
|
||||||
7z - 7z C++ Encoder/Decoder
|
|
||||||
|
|
||||||
Bundles - Modules that are bundles of other modules
|
|
||||||
|
|
||||||
Alone7z - 7zr.exe: Standalone version of 7z.exe that supports only 7z/LZMA/BCJ/BCJ2
|
|
||||||
LzmaCon - lzma.exe: LZMA compression/decompression
|
|
||||||
Format7zR - 7zr.dll: Reduced version of 7za.dll: extracting/compressing to 7z/LZMA/BCJ/BCJ2
|
|
||||||
Format7zExtractR - 7zxr.dll: Reduced version of 7zxa.dll: extracting from 7z/LZMA/BCJ/BCJ2.
|
|
||||||
|
|
||||||
UI - User Interface files
|
|
||||||
|
|
||||||
Client7z - Test application for 7za.dll, 7zr.dll, 7zxr.dll
|
|
||||||
Common - Common UI files
|
|
||||||
Console - Code for console archiver
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CS/ - C# files
|
|
||||||
7zip
|
|
||||||
Common - some common files for 7-Zip
|
|
||||||
Compress - files related to compression/decompression
|
|
||||||
LZ - files related to LZ (Lempel-Ziv) compression algorithm
|
|
||||||
LZMA - LZMA compression/decompression
|
|
||||||
LzmaAlone - file->file LZMA compression/decompression
|
|
||||||
RangeCoder - Range Coder (special code of compression/decompression)
|
|
||||||
|
|
||||||
Java/ - Java files
|
|
||||||
SevenZip
|
|
||||||
Compression - files related to compression/decompression
|
|
||||||
LZ - files related to LZ (Lempel-Ziv) compression algorithm
|
|
||||||
LZMA - LZMA compression/decompression
|
|
||||||
RangeCoder - Range Coder (special code of compression/decompression)
|
|
||||||
|
|
||||||
|
|
||||||
C/C++ source code of LZMA SDK is part of 7-Zip project.
|
|
||||||
7-Zip source code can be downloaded from 7-Zip's SourceForge page:
|
|
||||||
|
|
||||||
http://sourceforge.net/projects/sevenzip/
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
LZMA features
|
|
||||||
-------------
|
|
||||||
- Variable dictionary size (up to 1 GB)
|
|
||||||
- Estimated compressing speed: about 2 MB/s on 2 GHz CPU
|
|
||||||
- Estimated decompressing speed:
|
|
||||||
- 20-30 MB/s on 2 GHz Core 2 or AMD Athlon 64
|
|
||||||
- 1-2 MB/s on 200 MHz ARM, MIPS, PowerPC or other simple RISC
|
|
||||||
- Small memory requirements for decompressing (16 KB + DictionarySize)
|
|
||||||
- Small code size for decompressing: 5-8 KB
|
|
||||||
|
|
||||||
LZMA decoder uses only integer operations and can be
|
|
||||||
implemented in any modern 32-bit CPU (or on 16-bit CPU with some conditions).
|
|
||||||
|
|
||||||
Some critical operations that affect the speed of LZMA decompression:
|
|
||||||
1) 32*16 bit integer multiply
|
|
||||||
2) Misspredicted branches (penalty mostly depends from pipeline length)
|
|
||||||
3) 32-bit shift and arithmetic operations
|
|
||||||
|
|
||||||
The speed of LZMA decompressing mostly depends from CPU speed.
|
|
||||||
Memory speed has no big meaning. But if your CPU has small data cache,
|
|
||||||
overall weight of memory speed will slightly increase.
|
|
||||||
|
|
||||||
|
|
||||||
How To Use
|
|
||||||
----------
|
|
||||||
|
|
||||||
Using LZMA encoder/decoder executable
|
|
||||||
--------------------------------------
|
|
||||||
|
|
||||||
Usage: LZMA <e|d> inputFile outputFile [<switches>...]
|
|
||||||
|
|
||||||
e: encode file
|
|
||||||
|
|
||||||
d: decode file
|
|
||||||
|
|
||||||
b: Benchmark. There are two tests: compressing and decompressing
|
|
||||||
with LZMA method. Benchmark shows rating in MIPS (million
|
|
||||||
instructions per second). Rating value is calculated from
|
|
||||||
measured speed and it is normalized with Intel's Core 2 results.
|
|
||||||
Also Benchmark checks possible hardware errors (RAM
|
|
||||||
errors in most cases). Benchmark uses these settings:
|
|
||||||
(-a1, -d21, -fb32, -mfbt4). You can change only -d parameter.
|
|
||||||
Also you can change the number of iterations. Example for 30 iterations:
|
|
||||||
LZMA b 30
|
|
||||||
Default number of iterations is 10.
|
|
||||||
|
|
||||||
<Switches>
|
|
||||||
|
|
||||||
|
|
||||||
-a{N}: set compression mode 0 = fast, 1 = normal
|
|
||||||
default: 1 (normal)
|
|
||||||
|
|
||||||
d{N}: Sets Dictionary size - [0, 30], default: 23 (8MB)
|
|
||||||
The maximum value for dictionary size is 1 GB = 2^30 bytes.
|
|
||||||
Dictionary size is calculated as DictionarySize = 2^N bytes.
|
|
||||||
For decompressing file compressed by LZMA method with dictionary
|
|
||||||
size D = 2^N you need about D bytes of memory (RAM).
|
|
||||||
|
|
||||||
-fb{N}: set number of fast bytes - [5, 273], default: 128
|
|
||||||
Usually big number gives a little bit better compression ratio
|
|
||||||
and slower compression process.
|
|
||||||
|
|
||||||
-lc{N}: set number of literal context bits - [0, 8], default: 3
|
|
||||||
Sometimes lc=4 gives gain for big files.
|
|
||||||
|
|
||||||
-lp{N}: set number of literal pos bits - [0, 4], default: 0
|
|
||||||
lp switch is intended for periodical data when period is
|
|
||||||
equal 2^N. For example, for 32-bit (4 bytes)
|
|
||||||
periodical data you can use lp=2. Often it's better to set lc0,
|
|
||||||
if you change lp switch.
|
|
||||||
|
|
||||||
-pb{N}: set number of pos bits - [0, 4], default: 2
|
|
||||||
pb switch is intended for periodical data
|
|
||||||
when period is equal 2^N.
|
|
||||||
|
|
||||||
-mf{MF_ID}: set Match Finder. Default: bt4.
|
|
||||||
Algorithms from hc* group doesn't provide good compression
|
|
||||||
ratio, but they often works pretty fast in combination with
|
|
||||||
fast mode (-a0).
|
|
||||||
|
|
||||||
Memory requirements depend from dictionary size
|
|
||||||
(parameter "d" in table below).
|
|
||||||
|
|
||||||
MF_ID Memory Description
|
|
||||||
|
|
||||||
bt2 d * 9.5 + 4MB Binary Tree with 2 bytes hashing.
|
|
||||||
bt3 d * 11.5 + 4MB Binary Tree with 3 bytes hashing.
|
|
||||||
bt4 d * 11.5 + 4MB Binary Tree with 4 bytes hashing.
|
|
||||||
hc4 d * 7.5 + 4MB Hash Chain with 4 bytes hashing.
|
|
||||||
|
|
||||||
-eos: write End Of Stream marker. By default LZMA doesn't write
|
|
||||||
eos marker, since LZMA decoder knows uncompressed size
|
|
||||||
stored in .lzma file header.
|
|
||||||
|
|
||||||
-si: Read data from stdin (it will write End Of Stream marker).
|
|
||||||
-so: Write data to stdout
|
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
1) LZMA e file.bin file.lzma -d16 -lc0
|
|
||||||
|
|
||||||
compresses file.bin to file.lzma with 64 KB dictionary (2^16=64K)
|
|
||||||
and 0 literal context bits. -lc0 allows to reduce memory requirements
|
|
||||||
for decompression.
|
|
||||||
|
|
||||||
|
|
||||||
2) LZMA e file.bin file.lzma -lc0 -lp2
|
|
||||||
|
|
||||||
compresses file.bin to file.lzma with settings suitable
|
|
||||||
for 32-bit periodical data (for example, ARM or MIPS code).
|
|
||||||
|
|
||||||
3) LZMA d file.lzma file.bin
|
|
||||||
|
|
||||||
decompresses file.lzma to file.bin.
|
|
||||||
|
|
||||||
|
|
||||||
Compression ratio hints
|
|
||||||
-----------------------
|
|
||||||
|
|
||||||
Recommendations
|
|
||||||
---------------
|
|
||||||
|
|
||||||
To increase the compression ratio for LZMA compressing it's desirable
|
|
||||||
to have aligned data (if it's possible) and also it's desirable to locate
|
|
||||||
data in such order, where code is grouped in one place and data is
|
|
||||||
grouped in other place (it's better than such mixing: code, data, code,
|
|
||||||
data, ...).
|
|
||||||
|
|
||||||
|
|
||||||
Filters
|
|
||||||
-------
|
|
||||||
You can increase the compression ratio for some data types, using
|
|
||||||
special filters before compressing. For example, it's possible to
|
|
||||||
increase the compression ratio on 5-10% for code for those CPU ISAs:
|
|
||||||
x86, IA-64, ARM, ARM-Thumb, PowerPC, SPARC.
|
|
||||||
|
|
||||||
You can find C source code of such filters in C/Bra*.* files
|
|
||||||
|
|
||||||
You can check the compression ratio gain of these filters with such
|
|
||||||
7-Zip commands (example for ARM code):
|
|
||||||
No filter:
|
|
||||||
7z a a1.7z a.bin -m0=lzma
|
|
||||||
|
|
||||||
With filter for little-endian ARM code:
|
|
||||||
7z a a2.7z a.bin -m0=arm -m1=lzma
|
|
||||||
|
|
||||||
It works in such manner:
|
|
||||||
Compressing = Filter_encoding + LZMA_encoding
|
|
||||||
Decompressing = LZMA_decoding + Filter_decoding
|
|
||||||
|
|
||||||
Compressing and decompressing speed of such filters is very high,
|
|
||||||
so it will not increase decompressing time too much.
|
|
||||||
Moreover, it reduces decompression time for LZMA_decoding,
|
|
||||||
since compression ratio with filtering is higher.
|
|
||||||
|
|
||||||
These filters convert CALL (calling procedure) instructions
|
|
||||||
from relative offsets to absolute addresses, so such data becomes more
|
|
||||||
compressible.
|
|
||||||
|
|
||||||
For some ISAs (for example, for MIPS) it's impossible to get gain from such filter.
|
|
||||||
|
|
||||||
|
|
||||||
LZMA compressed file format
|
LZMA compressed file format
|
||||||
@@ -313,6 +24,7 @@ Offset Size Description
|
|||||||
13 Compressed data
|
13 Compressed data
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ANSI-C LZMA Decoder
|
ANSI-C LZMA Decoder
|
||||||
~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
@@ -322,7 +34,9 @@ from sourceforge.net site.
|
|||||||
|
|
||||||
To use ANSI-C LZMA Decoder you need the following files:
|
To use ANSI-C LZMA Decoder you need the following files:
|
||||||
1) LzmaDec.h + LzmaDec.c + Types.h
|
1) LzmaDec.h + LzmaDec.c + Types.h
|
||||||
LzmaUtil/LzmaUtil.c is example application that uses these files.
|
|
||||||
|
Look example code:
|
||||||
|
C/Util/Lzma/LzmaUtil.c
|
||||||
|
|
||||||
|
|
||||||
Memory requirements for LZMA decoding
|
Memory requirements for LZMA decoding
|
||||||
@@ -445,7 +159,8 @@ Memory Requirements:
|
|||||||
4) Free all allocated structures
|
4) Free all allocated structures
|
||||||
LzmaDec_Free(&state, &g_Alloc);
|
LzmaDec_Free(&state, &g_Alloc);
|
||||||
|
|
||||||
For full code example, look at C/LzmaUtil/LzmaUtil.c code.
|
Look example code:
|
||||||
|
C/Util/Lzma/LzmaUtil.c
|
||||||
|
|
||||||
|
|
||||||
How To compress data
|
How To compress data
|
||||||
@@ -478,7 +193,8 @@ It's OK to use same allocator for alloc and allocBig.
|
|||||||
Single-call Compression with callbacks
|
Single-call Compression with callbacks
|
||||||
--------------------------------------
|
--------------------------------------
|
||||||
|
|
||||||
Check C/LzmaUtil/LzmaUtil.c as example,
|
Look example code:
|
||||||
|
C/Util/Lzma/LzmaUtil.c
|
||||||
|
|
||||||
When to use: file->file compressing
|
When to use: file->file compressing
|
||||||
|
|
||||||
|
|||||||
103
DOC/readme.txt
103
DOC/readme.txt
@@ -1,9 +1,9 @@
|
|||||||
7-Zip 9.32 Sources
|
7-Zip 9.36 Sources
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
7-Zip is a file archiver for Windows.
|
7-Zip is a file archiver for Windows.
|
||||||
|
|
||||||
7-Zip Copyright (C) 1999-2013 Igor Pavlov.
|
7-Zip Copyright (C) 1999-2014 Igor Pavlov.
|
||||||
|
|
||||||
|
|
||||||
License Info
|
License Info
|
||||||
@@ -36,11 +36,10 @@ In brief it means:
|
|||||||
LZMA SDK
|
LZMA SDK
|
||||||
--------
|
--------
|
||||||
|
|
||||||
Also this package contains files from LZMA SDK
|
This package also contains some files from LZMA SDK
|
||||||
you can download LZMA SDK from this page:
|
You can download LZMA SDK from:
|
||||||
http://www.7-zip.org/sdk.html
|
http://www.7-zip.org/sdk.html
|
||||||
read about addtional licenses for LZMA SDK in file
|
LZMA SDK is written and placed in the public domain by Igor Pavlov.
|
||||||
DOC/lzma.txt
|
|
||||||
|
|
||||||
|
|
||||||
How to compile
|
How to compile
|
||||||
@@ -98,82 +97,60 @@ DOC Documentation
|
|||||||
7zFormat.txt - 7z format description
|
7zFormat.txt - 7z format description
|
||||||
copying.txt - GNU LGPL license
|
copying.txt - GNU LGPL license
|
||||||
unRarLicense.txt - License for unRAR part of source code
|
unRarLicense.txt - License for unRAR part of source code
|
||||||
history.txt - Sources history
|
src-history.txt - Sources history
|
||||||
Methods.txt - Compression method IDs
|
Methods.txt - Compression method IDs
|
||||||
readme.txt - Readme file
|
readme.txt - Readme file
|
||||||
lzma.txt - LZMA SDK description
|
lzma.txt - LZMA compression description
|
||||||
7zip.nsi - installer script for NSIS
|
7zip.nsi - installer script for NSIS
|
||||||
|
7zip.wix - installer script for WIX
|
||||||
|
|
||||||
|
|
||||||
|
Asm - Source code in Assembler (optimized code for CRC calculation and Intel-AES encryption)
|
||||||
|
|
||||||
C - Source code in C
|
C - Source code in C
|
||||||
CPP - Source code in CPP
|
|
||||||
|
|
||||||
Common Common modules
|
CPP - Source code in C++
|
||||||
Windows Win32 wrappers
|
|
||||||
|
Common common files for C++ projects
|
||||||
|
|
||||||
|
Windows common files for Windows related code
|
||||||
|
|
||||||
7zip
|
7zip
|
||||||
-------
|
|
||||||
Common Common modules for 7-zip
|
Common Common modules for 7-zip
|
||||||
|
|
||||||
Archive 7-Zip Archive Format Plugins
|
Archive files related to archiving
|
||||||
--------
|
|
||||||
Common
|
|
||||||
7z
|
|
||||||
Arj
|
|
||||||
BZip2
|
|
||||||
Cab
|
|
||||||
Cpio
|
|
||||||
GZip
|
|
||||||
Rar
|
|
||||||
Rpm
|
|
||||||
Split
|
|
||||||
Tar
|
|
||||||
Zip
|
|
||||||
|
|
||||||
Bundle Modules that are bundles of other modules
|
Bundle Modules that are bundles of other modules (files)
|
||||||
------
|
|
||||||
Alone 7za.exe: Standalone version of 7z
|
Alone 7za.exe: Standalone version of 7-Zip console that supports only 7z/xz/cab/zip/gzip/bzip2/tar.
|
||||||
Alone7z 7zr.exe: Standalone version of 7z that supports only 7z/LZMA/BCJ/BCJ2
|
Alone7z 7zr.exe: Standalone version of 7-Zip console that supports only 7z (reduced version)
|
||||||
|
Fm Standalone version of 7-Zip File Manager
|
||||||
|
Format7z 7za.dll: .7z support
|
||||||
|
Format7zExtract 7zxa.dll: .7z support, extracting only
|
||||||
|
Format7zR 7zr.dll: .7z support, reduced version
|
||||||
|
Format7zExtractR 7zxr.dll: .7z support, reduced version, extracting only
|
||||||
|
Format7zF 7z.dll: all formats
|
||||||
|
LzmaCon lzma.exe: LZMA compression/decompression
|
||||||
SFXCon 7zCon.sfx: Console 7z SFX module
|
SFXCon 7zCon.sfx: Console 7z SFX module
|
||||||
SFXWin 7z.sfx: Windows 7z SFX module
|
SFXWin 7z.sfx: Windows 7z SFX module
|
||||||
SFXSetup 7zS.sfx: Windows 7z SFX module for Installers
|
SFXSetup 7zS.sfx: Windows 7z SFX module for Installers
|
||||||
Format7z 7za.dll: .7z support
|
|
||||||
Format7zExtract 7zxa.dll: .7z support, extracting only
|
Compress files for compression/decompression
|
||||||
Format7zR 7zr.dll: .7z support, LZMA/BCJ* only
|
|
||||||
Format7zExtractR 7zxr.dll: .7z support, LZMA/BCJ* only, extracting only
|
Crypto files for encryption / decompression
|
||||||
Format7zF 7z.dll: all formats
|
|
||||||
|
|
||||||
UI
|
UI
|
||||||
--
|
|
||||||
Agent Intermediary modules for FAR plugin and Explorer plugin
|
Agent Intermediary modules for FAR plugin and Explorer plugin
|
||||||
Console 7z.exe Console version
|
|
||||||
Explorer Explorer plugin
|
|
||||||
Resource Resources
|
|
||||||
Far FAR plugin
|
|
||||||
Client7z Test application for 7za.dll
|
Client7z Test application for 7za.dll
|
||||||
|
Common Common UI files
|
||||||
|
Console 7z.exe : Console version
|
||||||
|
Explorer 7-zip.dll: 7-Zip Shell extension
|
||||||
|
Far plugin for Far Manager
|
||||||
|
FileManager 7zFM.exe: 7-Zip File Manager
|
||||||
|
GUI 7zG.exe: 7-Zip GUI version
|
||||||
|
|
||||||
Compress
|
|
||||||
--------
|
|
||||||
BZip2 BZip2 compressor
|
|
||||||
Branch Branch converter
|
|
||||||
ByteSwap Byte Swap converter
|
|
||||||
Copy Copy coder
|
|
||||||
Deflate
|
|
||||||
Implode
|
|
||||||
Arj
|
|
||||||
LZMA
|
|
||||||
PPMd Dmitry Shkarin's PPMdH with small changes.
|
|
||||||
LZ Lempel - Ziv
|
|
||||||
|
|
||||||
Crypto Crypto modules
|
|
||||||
------
|
|
||||||
7zAES Cipher for 7z
|
|
||||||
AES AES Cipher
|
|
||||||
Rar20 Cipher for Rar 2.0
|
|
||||||
RarAES Cipher for Rar 3.0
|
|
||||||
Zip Cipher for Zip
|
|
||||||
|
|
||||||
FileManager File Manager
|
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
Sources history of the 7-Zip
|
HISTORY of the 7-Zip source code
|
||||||
----------------------------
|
--------------------------------
|
||||||
|
|
||||||
9.31 2012-10-31
|
9.31 2012-10-31
|
||||||
-------------------------
|
-------------------------
|
||||||
Reference in New Issue
Block a user