mirror of
https://github.com/Xevion/easy7zip.git
synced 2025-12-06 11:14:58 -06:00
Fix naming: ZStandard -> Zstandard
This commit is contained in:
@@ -40,7 +40,7 @@ BEGIN \
|
|||||||
VALUE "InternalName", intName \
|
VALUE "InternalName", intName \
|
||||||
VALUE "LegalCopyright", MY_COPYRIGHT \
|
VALUE "LegalCopyright", MY_COPYRIGHT \
|
||||||
VALUE "OriginalFilename", origName \
|
VALUE "OriginalFilename", origName \
|
||||||
VALUE "ProductName", "7-Zip ZStandard" \
|
VALUE "ProductName", "7-Zip Zstandard" \
|
||||||
VALUE "ProductVersion", MY_VERSION \
|
VALUE "ProductVersion", MY_VERSION \
|
||||||
END \
|
END \
|
||||||
END \
|
END \
|
||||||
|
|||||||
@@ -38,9 +38,9 @@
|
|||||||
#define _7ZIP_CUR_VER ((MY_VER_MAJOR << 16) | MY_VER_MINOR)
|
#define _7ZIP_CUR_VER ((MY_VER_MAJOR << 16) | MY_VER_MINOR)
|
||||||
#define _7ZIP_DLL_VER_COMPAT ((16 << 16) | 3)
|
#define _7ZIP_DLL_VER_COMPAT ((16 << 16) | 3)
|
||||||
|
|
||||||
static LPCWSTR const k_7zip = L"7-Zip-ZStandard";
|
static LPCWSTR const k_7zip = L"7-Zip-Zstandard";
|
||||||
|
|
||||||
static LPCWSTR const k_Reg_Software_7zip = L"Software\\7-Zip-ZStandard";
|
static LPCWSTR const k_Reg_Software_7zip = L"Software\\7-Zip-Zstandard";
|
||||||
|
|
||||||
// #define _64BIT_INSTALLER 1
|
// #define _64BIT_INSTALLER 1
|
||||||
|
|
||||||
@@ -48,7 +48,7 @@ static LPCWSTR const k_Reg_Software_7zip = L"Software\\7-Zip-ZStandard";
|
|||||||
#define _64BIT_INSTALLER 1
|
#define _64BIT_INSTALLER 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define k_7zip_with_Ver_base L"7-Zip ZStandard " LLL(MY_VERSION)
|
#define k_7zip_with_Ver_base L"7-Zip Zstandard " LLL(MY_VERSION)
|
||||||
|
|
||||||
#ifdef _64BIT_INSTALLER
|
#ifdef _64BIT_INSTALLER
|
||||||
#define k_7zip_with_Ver k_7zip_with_Ver_base L" (x64)"
|
#define k_7zip_with_Ver k_7zip_with_Ver_base L" (x64)"
|
||||||
@@ -520,9 +520,9 @@ static LPCWSTR FindSubString(LPCWSTR s1, const char *s2)
|
|||||||
static void Set7zipPostfix(WCHAR *s)
|
static void Set7zipPostfix(WCHAR *s)
|
||||||
{
|
{
|
||||||
NormalizePrefix(s);
|
NormalizePrefix(s);
|
||||||
if (FindSubString(s, "7-Zip-ZStandard"))
|
if (FindSubString(s, "7-Zip-Zstandard"))
|
||||||
return;
|
return;
|
||||||
wcscat(s, L"7-Zip-ZStandard\\");
|
wcscat(s, L"7-Zip-Zstandard\\");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -805,7 +805,7 @@ static void WriteShellEx()
|
|||||||
for (i = 0; i < sizeof(k_ShellEx_Items) / sizeof(k_ShellEx_Items[0]); i++)
|
for (i = 0; i < sizeof(k_ShellEx_Items) / sizeof(k_ShellEx_Items[0]); i++)
|
||||||
{
|
{
|
||||||
wcscpy(destPath, k_ShellEx_Items[i]);
|
wcscpy(destPath, k_ShellEx_Items[i]);
|
||||||
wcscat(destPath, L"\\7-Zip-ZStandard");
|
wcscat(destPath, L"\\7-Zip-Zstandard");
|
||||||
|
|
||||||
#ifdef _64BIT_INSTALLER
|
#ifdef _64BIT_INSTALLER
|
||||||
MyRegistry_CreateKeyAndVal_32(HKEY_CLASSES_ROOT, destPath, NULL, k_7zip_CLSID);
|
MyRegistry_CreateKeyAndVal_32(HKEY_CLASSES_ROOT, destPath, NULL, k_7zip_CLSID);
|
||||||
@@ -836,7 +836,7 @@ static void WriteShellEx()
|
|||||||
|
|
||||||
{
|
{
|
||||||
HKEY destKey = 0;
|
HKEY destKey = 0;
|
||||||
LONG res = MyRegistry_CreateKey(HKEY_LOCAL_MACHINE, L"Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\7-Zip-ZStandard", &destKey);
|
LONG res = MyRegistry_CreateKey(HKEY_LOCAL_MACHINE, L"Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\7-Zip-Zstandard", &destKey);
|
||||||
if (res == ERROR_SUCCESS)
|
if (res == ERROR_SUCCESS)
|
||||||
{
|
{
|
||||||
// wcscpy(destPath, path);
|
// wcscpy(destPath, path);
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
#include "../../7zVersion.rc"
|
#include "../../7zVersion.rc"
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
|
|
||||||
MY_VERSION_INFO(MY_VFT_APP, "7-Zip Installer ZStandard", "7zipInstall", "7zipInstall.exe")
|
MY_VERSION_INFO(MY_VFT_APP, "7-Zip Installer Zstandard", "7zipInstall", "7zipInstall.exe")
|
||||||
|
|
||||||
1 ICON "7zip.ico"
|
1 ICON "7zip.ico"
|
||||||
|
|
||||||
@@ -28,7 +28,7 @@ MY_VERSION_INFO(MY_VFT_APP, "7-Zip Installer ZStandard", "7zipInstall", "7zipIns
|
|||||||
|
|
||||||
IDD_INSTALL DIALOG 0, 0, xs, ys
|
IDD_INSTALL DIALOG 0, 0, xs, ys
|
||||||
STYLE DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
STYLE DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||||
CAPTION "Install 7-Zip ZStandard"
|
CAPTION "Install 7-Zip Zstandard"
|
||||||
FONT 8, "MS Shell Dlg"
|
FONT 8, "MS Shell Dlg"
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Destination folder:", IDT_EXTRACT_EXTRACT_TO, m, m, xc, 8
|
LTEXT "Destination folder:", IDT_EXTRACT_EXTRACT_TO, m, m, xc, 8
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
#define _64BIT_INSTALLER 1
|
#define _64BIT_INSTALLER 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define k_7zip_with_Ver_base L"7-Zip ZStandard " LLL(MY_VERSION)
|
#define k_7zip_with_Ver_base L"7-Zip Zstandard " LLL(MY_VERSION)
|
||||||
|
|
||||||
#ifdef _64BIT_INSTALLER
|
#ifdef _64BIT_INSTALLER
|
||||||
#define k_7zip_with_Ver k_7zip_with_Ver_base L" (x64)"
|
#define k_7zip_with_Ver k_7zip_with_Ver_base L" (x64)"
|
||||||
@@ -38,7 +38,7 @@
|
|||||||
|
|
||||||
// static const WCHAR * const k_7zip_with_Ver_str = k_7zip_with_Ver;
|
// static const WCHAR * const k_7zip_with_Ver_str = k_7zip_with_Ver;
|
||||||
|
|
||||||
static const WCHAR * const k_Reg_Software_7zip = L"Software\\7-Zip-ZStandard";
|
static const WCHAR * const k_Reg_Software_7zip = L"Software\\7-Zip-Zstandard";
|
||||||
|
|
||||||
static const WCHAR * const k_Reg_Path = L"Path";
|
static const WCHAR * const k_Reg_Path = L"Path";
|
||||||
|
|
||||||
@@ -295,7 +295,7 @@ static void SetShellProgramsGroup(HWND hwndOwner)
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
NormalizePrefix(link);
|
NormalizePrefix(link);
|
||||||
wcscat(link, L"7-Zip-ZStandard\\");
|
wcscat(link, L"7-Zip-Zstandard\\");
|
||||||
|
|
||||||
{
|
{
|
||||||
const size_t baseLen = wcslen(link);
|
const size_t baseLen = wcslen(link);
|
||||||
@@ -344,7 +344,7 @@ static const WCHAR * const k_Shell_Approved = L"Software\\Microsoft\\Windows\\Cu
|
|||||||
|
|
||||||
static const WCHAR * const k_AppPaths_7zFm = L"Software\\Microsoft\\Windows\\CurrentVersion\\App Paths\\7zFM.exe";
|
static const WCHAR * const k_AppPaths_7zFm = L"Software\\Microsoft\\Windows\\CurrentVersion\\App Paths\\7zFM.exe";
|
||||||
#define k_REG_Uninstall L"Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\"
|
#define k_REG_Uninstall L"Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\"
|
||||||
static const WCHAR * const k_Uninstall_7zip = k_REG_Uninstall L"7-Zip-ZStandard";
|
static const WCHAR * const k_Uninstall_7zip = k_REG_Uninstall L"7-Zip-Zstandard";
|
||||||
|
|
||||||
|
|
||||||
static Bool AreEqual_Path_PrefixName(const wchar_t *s, const wchar_t *prefix, const wchar_t *name)
|
static Bool AreEqual_Path_PrefixName(const wchar_t *s, const wchar_t *prefix, const wchar_t *name)
|
||||||
@@ -374,7 +374,7 @@ static void WriteCLSID()
|
|||||||
{
|
{
|
||||||
WCHAR destPath[MAX_PATH];
|
WCHAR destPath[MAX_PATH];
|
||||||
wcscpy(destPath, k_ShellEx_Items[i]);
|
wcscpy(destPath, k_ShellEx_Items[i]);
|
||||||
wcscat(destPath, L"\\7-Zip-ZStandard");
|
wcscat(destPath, L"\\7-Zip-Zstandard");
|
||||||
|
|
||||||
MyRegistry_DeleteKey(HKEY_CLASSES_ROOT, destPath);
|
MyRegistry_DeleteKey(HKEY_CLASSES_ROOT, destPath);
|
||||||
}
|
}
|
||||||
@@ -411,7 +411,7 @@ static void WriteCLSID()
|
|||||||
{
|
{
|
||||||
WCHAR destPath[MAX_PATH];
|
WCHAR destPath[MAX_PATH];
|
||||||
wcscpy(destPath, k_ShellEx_Items[i]);
|
wcscpy(destPath, k_ShellEx_Items[i]);
|
||||||
wcscat(destPath, L"\\7-Zip-ZStandard");
|
wcscat(destPath, L"\\7-Zip-Zstandard");
|
||||||
|
|
||||||
MyRegistry_DeleteKey_32(HKEY_CLASSES_ROOT, destPath);
|
MyRegistry_DeleteKey_32(HKEY_CLASSES_ROOT, destPath);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
#include "../../7zVersion.rc"
|
#include "../../7zVersion.rc"
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
|
|
||||||
MY_VERSION_INFO(MY_VFT_APP, "7-Zip Uninstaller ZStandard", "Uninstall", "Uninstall.exe")
|
MY_VERSION_INFO(MY_VFT_APP, "7-Zip Uninstaller Zstandard", "Uninstall", "Uninstall.exe")
|
||||||
|
|
||||||
1 ICON "7zipUninstall.ico"
|
1 ICON "7zipUninstall.ico"
|
||||||
|
|
||||||
@@ -28,7 +28,7 @@ MY_VERSION_INFO(MY_VFT_APP, "7-Zip Uninstaller ZStandard", "Uninstall", "Uninsta
|
|||||||
|
|
||||||
IDD_INSTALL DIALOG 0, 0, xs, ys
|
IDD_INSTALL DIALOG 0, 0, xs, ys
|
||||||
STYLE DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
STYLE DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||||
CAPTION "Uninstall 7-Zip ZStandard"
|
CAPTION "Uninstall 7-Zip Zstandard"
|
||||||
FONT 8, "MS Shell Dlg"
|
FONT 8, "MS Shell Dlg"
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Uninstall from:", IDT_EXTRACT_EXTRACT_TO, m, m, xc, 8
|
LTEXT "Uninstall from:", IDT_EXTRACT_EXTRACT_TO, m, m, xc, 8
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
# Multithreading Library for [Brotli], [Lizard], [LZ4], [LZ5] and [ZStandard]
|
# Multithreading Library for [Brotli], [Lizard], [LZ4], [LZ5] and [Zstandard]
|
||||||
|
|
||||||
## Description
|
## Description
|
||||||
- works with skippables frame id 0x184D2A50 (12 bytes per compressed frame)
|
- works with skippables frame id 0x184D2A50 (12 bytes per compressed frame)
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
## Generic skippable frame definition
|
## Generic skippable frame definition
|
||||||
|
|
||||||
- the frame header for [Lizard], [LZ4], [LZ5] and [ZStandard] is like this:
|
- the frame header for [Lizard], [LZ4], [LZ5] and [Zstandard] is like this:
|
||||||
|
|
||||||
size | value | description
|
size | value | description
|
||||||
--------|-------------------|------------
|
--------|-------------------|------------
|
||||||
@@ -41,7 +41,7 @@ size | value | description
|
|||||||
[Brotli]:https://github.com/google/brotli/
|
[Brotli]:https://github.com/google/brotli/
|
||||||
[LZ4]:https://github.com/lz4/lz4/
|
[LZ4]:https://github.com/lz4/lz4/
|
||||||
[LZ5]:https://github.com/inikep/lz5/
|
[LZ5]:https://github.com/inikep/lz5/
|
||||||
[ZStandard]:https://github.com/facebook/zstd/
|
[Zstandard]:https://github.com/facebook/zstd/
|
||||||
[Lizard]:https://github.com/inikep/lizard/
|
[Lizard]:https://github.com/inikep/lizard/
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#include "../../../../C/7zVersionTr.h"
|
#include "../../../../C/7zVersionTr.h"
|
||||||
#include "../../../../C/7zVersion.rc"
|
#include "../../../../C/7zVersion.rc"
|
||||||
|
|
||||||
MY_VERSION_INFO_DLL("7-Zip ZStandard Plugin v1.2.0", "zstd")
|
MY_VERSION_INFO_DLL("7-Zip Zstandard Plugin v1.2.0", "zstd")
|
||||||
|
|
||||||
101 ICON "../../Archive/Icons/zst.ico"
|
101 ICON "../../Archive/Icons/zst.ico"
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#include "../../../../C/7zVersionTr.h"
|
#include "../../../../C/7zVersionTr.h"
|
||||||
#include "../../../../C/7zVersion.rc"
|
#include "../../../../C/7zVersion.rc"
|
||||||
|
|
||||||
MY_VERSION_INFO_DLL("7-Zip ZStandard Plugin v1.2.0", "zstd")
|
MY_VERSION_INFO_DLL("7-Zip Zstandard Plugin v1.2.0", "zstd")
|
||||||
|
|
||||||
101 ICON "../../Archive/Icons/zst.ico"
|
101 ICON "../../Archive/Icons/zst.ico"
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ HRESULT CDecoder::ErrorOut(size_t code)
|
|||||||
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
||||||
|
|
||||||
mbstowcs(wstrError, strError, 200);
|
mbstowcs(wstrError, strError, 200);
|
||||||
MessageBoxW(0, wstrError, L"7-Zip ZStandard", MB_ICONERROR | MB_OK);
|
MessageBoxW(0, wstrError, L"7-Zip Zstandard", MB_ICONERROR | MB_OK);
|
||||||
MyFree(wstrError);
|
MyFree(wstrError);
|
||||||
|
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ HRESULT CEncoder::ErrorOut(size_t code)
|
|||||||
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
||||||
|
|
||||||
mbstowcs(wstrError, strError, 200);
|
mbstowcs(wstrError, strError, 200);
|
||||||
MessageBoxW(0, wstrError, L"7-Zip ZStandard", MB_ICONERROR | MB_OK);
|
MessageBoxW(0, wstrError, L"7-Zip Zstandard", MB_ICONERROR | MB_OK);
|
||||||
MyFree(wstrError);
|
MyFree(wstrError);
|
||||||
|
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ HRESULT CDecoder::ErrorOut(size_t code)
|
|||||||
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
||||||
|
|
||||||
mbstowcs(wstrError, strError, 200);
|
mbstowcs(wstrError, strError, 200);
|
||||||
MessageBoxW(0, wstrError, L"7-Zip ZStandard", MB_ICONERROR | MB_OK);
|
MessageBoxW(0, wstrError, L"7-Zip Zstandard", MB_ICONERROR | MB_OK);
|
||||||
MyFree(wstrError);
|
MyFree(wstrError);
|
||||||
|
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ HRESULT CEncoder::ErrorOut(size_t code)
|
|||||||
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
||||||
|
|
||||||
mbstowcs(wstrError, strError, 200);
|
mbstowcs(wstrError, strError, 200);
|
||||||
MessageBoxW(0, wstrError, L"7-Zip ZStandard", MB_ICONERROR | MB_OK);
|
MessageBoxW(0, wstrError, L"7-Zip Zstandard", MB_ICONERROR | MB_OK);
|
||||||
MyFree(wstrError);
|
MyFree(wstrError);
|
||||||
|
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ HRESULT CDecoder::ErrorOut(size_t code)
|
|||||||
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
||||||
|
|
||||||
mbstowcs(wstrError, strError, 200);
|
mbstowcs(wstrError, strError, 200);
|
||||||
MessageBoxW(0, wstrError, L"7-Zip ZStandard", MB_ICONERROR | MB_OK);
|
MessageBoxW(0, wstrError, L"7-Zip Zstandard", MB_ICONERROR | MB_OK);
|
||||||
MyFree(wstrError);
|
MyFree(wstrError);
|
||||||
|
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ HRESULT CEncoder::ErrorOut(size_t code)
|
|||||||
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
||||||
|
|
||||||
mbstowcs(wstrError, strError, 200);
|
mbstowcs(wstrError, strError, 200);
|
||||||
MessageBoxW(0, wstrError, L"7-Zip ZStandard", MB_ICONERROR | MB_OK);
|
MessageBoxW(0, wstrError, L"7-Zip Zstandard", MB_ICONERROR | MB_OK);
|
||||||
MyFree(wstrError);
|
MyFree(wstrError);
|
||||||
|
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ HRESULT CDecoder::ErrorOut(size_t code)
|
|||||||
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
||||||
|
|
||||||
mbstowcs(wstrError, strError, 200);
|
mbstowcs(wstrError, strError, 200);
|
||||||
MessageBoxW(0, wstrError, L"7-Zip ZStandard", MB_ICONERROR | MB_OK);
|
MessageBoxW(0, wstrError, L"7-Zip Zstandard", MB_ICONERROR | MB_OK);
|
||||||
MyFree(wstrError);
|
MyFree(wstrError);
|
||||||
|
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ HRESULT CEncoder::ErrorOut(size_t code)
|
|||||||
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
||||||
|
|
||||||
mbstowcs(wstrError, strError, 200);
|
mbstowcs(wstrError, strError, 200);
|
||||||
MessageBoxW(0, wstrError, L"7-Zip ZStandard", MB_ICONERROR | MB_OK);
|
MessageBoxW(0, wstrError, L"7-Zip Zstandard", MB_ICONERROR | MB_OK);
|
||||||
MyFree(wstrError);
|
MyFree(wstrError);
|
||||||
|
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ HRESULT CDecoder::ErrorOut(size_t code)
|
|||||||
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
||||||
|
|
||||||
mbstowcs(wstrError, strError, 200);
|
mbstowcs(wstrError, strError, 200);
|
||||||
MessageBoxW(0, wstrError, L"7-Zip ZStandard", MB_ICONERROR | MB_OK);
|
MessageBoxW(0, wstrError, L"7-Zip Zstandard", MB_ICONERROR | MB_OK);
|
||||||
MyFree(wstrError);
|
MyFree(wstrError);
|
||||||
|
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ HRESULT CEncoder::ErrorOut(size_t code)
|
|||||||
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
wchar_t wstrError[200+5]; /* no malloc here, /TR */
|
||||||
|
|
||||||
mbstowcs(wstrError, strError, 200);
|
mbstowcs(wstrError, strError, 200);
|
||||||
MessageBoxW(0, wstrError, L"7-Zip ZStandard", MB_ICONERROR | MB_OK);
|
MessageBoxW(0, wstrError, L"7-Zip Zstandard", MB_ICONERROR | MB_OK);
|
||||||
MyFree(wstrError);
|
MyFree(wstrError);
|
||||||
|
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ using namespace NRegistry;
|
|||||||
static NSynchronization::CCriticalSection g_CS;
|
static NSynchronization::CCriticalSection g_CS;
|
||||||
#define CS_LOCK NSynchronization::CCriticalSectionLock lock(g_CS);
|
#define CS_LOCK NSynchronization::CCriticalSectionLock lock(g_CS);
|
||||||
|
|
||||||
static LPCTSTR const kCuPrefix = TEXT("Software") TEXT(STRING_PATH_SEPARATOR) TEXT("7-Zip-ZStandard") TEXT(STRING_PATH_SEPARATOR);
|
static LPCTSTR const kCuPrefix = TEXT("Software") TEXT(STRING_PATH_SEPARATOR) TEXT("7-Zip-Zstandard") TEXT(STRING_PATH_SEPARATOR);
|
||||||
|
|
||||||
static CSysString GetKeyPath(LPCTSTR path) { return kCuPrefix + (CSysString)path; }
|
static CSysString GetKeyPath(LPCTSTR path) { return kCuPrefix + (CSysString)path; }
|
||||||
|
|
||||||
|
|||||||
@@ -762,7 +762,7 @@ STDMETHODIMP CZipContextMenu::QueryContextMenu(HMENU hMenu, UINT indexMenu,
|
|||||||
mi.fMask |= MIIM_CHECKMARKS;
|
mi.fMask |= MIIM_CHECKMARKS;
|
||||||
mi.wID = currentCommandID++;
|
mi.wID = currentCommandID++;
|
||||||
mi.hSubMenu = popupMenu.Detach();
|
mi.hSubMenu = popupMenu.Detach();
|
||||||
mi.StringValue = "7-Zip ZStandard"; // LangString(IDS_CONTEXT_POPUP_CAPTION);
|
mi.StringValue = "7-Zip Zstandard"; // LangString(IDS_CONTEXT_POPUP_CAPTION);
|
||||||
mi.hbmpUnchecked = bitmap;
|
mi.hbmpUnchecked = bitmap;
|
||||||
|
|
||||||
CMenu menu;
|
CMenu menu;
|
||||||
@@ -798,7 +798,7 @@ STDMETHODIMP CZipContextMenu::QueryContextMenu(HMENU hMenu, UINT indexMenu,
|
|||||||
mi.fMask |= MIIM_CHECKMARKS;
|
mi.fMask |= MIIM_CHECKMARKS;
|
||||||
mi.wID = currentCommandID++;
|
mi.wID = currentCommandID++;
|
||||||
mi.hSubMenu = subMenu;
|
mi.hSubMenu = subMenu;
|
||||||
mi.StringValue = "CRC SHA ZStandard";
|
mi.StringValue = "CRC SHA Zstandard";
|
||||||
mi.hbmpUnchecked = bitmap;
|
mi.hbmpUnchecked = bitmap;
|
||||||
|
|
||||||
CMenu menu;
|
CMenu menu;
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
#include "ContextMenu.h"
|
#include "ContextMenu.h"
|
||||||
|
|
||||||
static LPCTSTR const k_ShellExtName = TEXT("7-Zip-ZStandard Shell Extension");
|
static LPCTSTR const k_ShellExtName = TEXT("7-Zip-Zstandard Shell Extension");
|
||||||
static LPCTSTR const k_Approved = TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved");
|
static LPCTSTR const k_Approved = TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved");
|
||||||
|
|
||||||
// {23170F69-40C1-278A-1000-000100020000}
|
// {23170F69-40C1-278A-1000-000100020000}
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ using namespace NWindows;
|
|||||||
|
|
||||||
void ShowErrorMessage(HWND window, LPCWSTR message)
|
void ShowErrorMessage(HWND window, LPCWSTR message)
|
||||||
{
|
{
|
||||||
::MessageBoxW(window, message, L"7-Zip-ZStandard", MB_OK | MB_ICONSTOP);
|
::MessageBoxW(window, message, L"7-Zip-Zstandard", MB_OK | MB_ICONSTOP);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ShowErrorMessageHwndRes(HWND window, UINT resID)
|
void ShowErrorMessageHwndRes(HWND window, UINT resID)
|
||||||
|
|||||||
@@ -25,8 +25,8 @@ static LPCTSTR const k_ShellExtName = TEXT("7-Zip Shell Extension");
|
|||||||
static LPCTSTR const k_Approved = TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved");
|
static LPCTSTR const k_Approved = TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved");
|
||||||
static LPCTSTR const k_Inproc = TEXT("InprocServer32");
|
static LPCTSTR const k_Inproc = TEXT("InprocServer32");
|
||||||
|
|
||||||
static LPCSTR const k_KeyPostfix_ContextMenu = "\\shellex\\ContextMenuHandlers\\7-Zip-ZStandard";
|
static LPCSTR const k_KeyPostfix_ContextMenu = "\\shellex\\ContextMenuHandlers\\7-Zip-Zstandard";
|
||||||
static LPCSTR const k_KeyPostfix_DragDrop = "\\shellex\\DragDropHandlers\\7-Zip-ZStandard";
|
static LPCSTR const k_KeyPostfix_DragDrop = "\\shellex\\DragDropHandlers\\7-Zip-Zstandard";
|
||||||
|
|
||||||
static LPCSTR const k_KeyName_File = "*";
|
static LPCSTR const k_KeyName_File = "*";
|
||||||
static LPCSTR const k_KeyName_Folder = "Folder";
|
static LPCSTR const k_KeyName_Folder = "Folder";
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ static const TCHAR * const kDefaultIconKeyName = TEXT("DefaultIcon");
|
|||||||
static const TCHAR * const kShellKeyName = TEXT("shell");
|
static const TCHAR * const kShellKeyName = TEXT("shell");
|
||||||
static const TCHAR * const kOpenKeyName = TEXT("open");
|
static const TCHAR * const kOpenKeyName = TEXT("open");
|
||||||
static const TCHAR * const kCommandKeyName = TEXT("command");
|
static const TCHAR * const kCommandKeyName = TEXT("command");
|
||||||
static const char * const k7zipPrefix = "7-Zip-ZStandard.";
|
static const char * const k7zipPrefix = "7-Zip-Zstandard.";
|
||||||
|
|
||||||
static CSysString GetExtProgramKeyName(const CSysString &ext)
|
static CSysString GetExtProgramKeyName(const CSysString &ext)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
using namespace NWindows;
|
using namespace NWindows;
|
||||||
using namespace NRegistry;
|
using namespace NRegistry;
|
||||||
|
|
||||||
#define REG_PATH_7Z TEXT("Software") TEXT(STRING_PATH_SEPARATOR) TEXT("7-Zip-ZStandard")
|
#define REG_PATH_7Z TEXT("Software") TEXT(STRING_PATH_SEPARATOR) TEXT("7-Zip-Zstandard")
|
||||||
|
|
||||||
static LPCTSTR const kCUBasePath = REG_PATH_7Z;
|
static LPCTSTR const kCUBasePath = REG_PATH_7Z;
|
||||||
static LPCTSTR const kCU_FMPath = REG_PATH_7Z TEXT(STRING_PATH_SEPARATOR) TEXT("FM");
|
static LPCTSTR const kCU_FMPath = REG_PATH_7Z TEXT(STRING_PATH_SEPARATOR) TEXT("FM");
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
using namespace NWindows;
|
using namespace NWindows;
|
||||||
using namespace NRegistry;
|
using namespace NRegistry;
|
||||||
|
|
||||||
#define REG_PATH_FM TEXT("Software") TEXT(STRING_PATH_SEPARATOR) TEXT("7-Zip-ZStandard") TEXT(STRING_PATH_SEPARATOR) TEXT("FM")
|
#define REG_PATH_FM TEXT("Software") TEXT(STRING_PATH_SEPARATOR) TEXT("7-Zip-Zstandard") TEXT(STRING_PATH_SEPARATOR) TEXT("FM")
|
||||||
|
|
||||||
static LPCTSTR const kCUBasePath = REG_PATH_FM;
|
static LPCTSTR const kCUBasePath = REG_PATH_FM;
|
||||||
static LPCTSTR const kCulumnsKeyName = REG_PATH_FM TEXT(STRING_PATH_SEPARATOR) TEXT("Columns");
|
static LPCTSTR const kCulumnsKeyName = REG_PATH_FM TEXT(STRING_PATH_SEPARATOR) TEXT("Columns");
|
||||||
|
|||||||
@@ -117,7 +117,7 @@ enum EMethodID
|
|||||||
static LPCSTR const kMethodsLongnames[] =
|
static LPCSTR const kMethodsLongnames[] =
|
||||||
{
|
{
|
||||||
"Copy"
|
"Copy"
|
||||||
, "ZStandard"
|
, "Zstandard"
|
||||||
, "Brotli"
|
, "Brotli"
|
||||||
, "LZ4"
|
, "LZ4"
|
||||||
, "LZ5"
|
, "LZ5"
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ ID | Codec, Author | 7-Zip Plugin Author
|
|||||||
---------|------------------------------|----------------------
|
---------|------------------------------|----------------------
|
||||||
F7 0x xx | reserved |
|
F7 0x xx | reserved |
|
||||||
F7 10 xx | LZHAM, Rich Geldreich | Rich Geldreich
|
F7 10 xx | LZHAM, Rich Geldreich | Rich Geldreich
|
||||||
F7 11 01 | ZStandard, Yann Collet | Tino Reichardt
|
F7 11 01 | Zstandard, Yann Collet | Tino Reichardt
|
||||||
F7 11 02 | Brotli, Google | Tino Reichardt
|
F7 11 02 | Brotli, Google | Tino Reichardt
|
||||||
F7 11 04 | LZ4, Yann Collet | Tino Reichardt
|
F7 11 04 | LZ4, Yann Collet | Tino Reichardt
|
||||||
F7 11 05 | LZ5, Przemyslaw Skibinski | Tino Reichardt
|
F7 11 05 | LZ5, Przemyslaw Skibinski | Tino Reichardt
|
||||||
@@ -50,7 +50,7 @@ Codec plugin author: Rich Geldreich
|
|||||||
- Source: https://github.com/richgel999/lzham_codec_devel
|
- Source: https://github.com/richgel999/lzham_codec_devel
|
||||||
|
|
||||||
|
|
||||||
Range F7 11 01, ZStandard
|
Range F7 11 01, Zstandard
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
Description:
|
Description:
|
||||||
@@ -98,11 +98,11 @@ Modes:
|
|||||||
- when compiled with ZSTD_LEGACY_SUPPORT, then support is increased to these
|
- when compiled with ZSTD_LEGACY_SUPPORT, then support is increased to these
|
||||||
addtional version numbers of zstd: v0.1 up v0.7
|
addtional version numbers of zstd: v0.1 up v0.7
|
||||||
- future formats of this algorithm will be fully compatible with release v1.0
|
- future formats of this algorithm will be fully compatible with release v1.0
|
||||||
of ZStandard (ZStandard 0.8 == ZStandard 1.0)
|
of Zstandard (Zstandard 0.8 == Zstandard 1.0)
|
||||||
- one ID should be okay for this codec
|
- one ID should be okay for this codec
|
||||||
|
|
||||||
Versions:
|
Versions:
|
||||||
The 7-Zip codec will be kept in sync with the current releases of ZStandard.
|
The 7-Zip codec will be kept in sync with the current releases of Zstandard.
|
||||||
|
|
||||||
|
|
||||||
Range F7 11 02, Brotli
|
Range F7 11 02, Brotli
|
||||||
|
|||||||
22
README.md
22
README.md
@@ -31,13 +31,13 @@ You can install it in two ways:
|
|||||||
- Levels 30..39 (fastLZ4 + Huffman) adds Huffman coding to fastLZ4
|
- Levels 30..39 (fastLZ4 + Huffman) adds Huffman coding to fastLZ4
|
||||||
- Levels 40..49 (LIZv1 + Huffman) give the best ratio, comparable to zlib and low levels of zstd/brotli, but with a faster decompression speed
|
- Levels 40..49 (LIZv1 + Huffman) give the best ratio, comparable to zlib and low levels of zstd/brotli, but with a faster decompression speed
|
||||||
|
|
||||||
## 7-Zip ZStandard Edition (full setup, with GUI and Explorer integration)
|
## 7-Zip Zstandard Edition (full setup, with GUI and Explorer integration)
|
||||||
|
|
||||||
### Installation (via setup)
|
### Installation (via setup)
|
||||||
1. download the setup from here [7-Zip ZS Releases](https://github.com/mcmilk/7-Zip-zstd/releases)
|
1. download the setup from here [7-Zip ZS Releases](https://github.com/mcmilk/7-Zip-zstd/releases)
|
||||||
2. install it, like the default [7-Zip]
|
2. install it, like the default [7-Zip]
|
||||||
3. use it ;)
|
3. use it ;)
|
||||||
4. you may check, if the 7-Zip can deal with [ZStandard] or other codecs via this command: `7z.exe i`
|
4. you may check, if the 7-Zip can deal with [Zstandard] or other codecs via this command: `7z.exe i`
|
||||||
|
|
||||||
The output should look like this:
|
The output should look like this:
|
||||||
```
|
```
|
||||||
@@ -45,7 +45,7 @@ The output should look like this:
|
|||||||
|
|
||||||
|
|
||||||
Libs:
|
Libs:
|
||||||
0 c:\Program Files\7-Zip-ZStandard\7z.dll
|
0 c:\Program Files\7-Zip-Zstandard\7z.dll
|
||||||
|
|
||||||
Formats:
|
Formats:
|
||||||
...
|
...
|
||||||
@@ -89,8 +89,8 @@ Codecs:
|
|||||||
|
|
||||||
### Usage and features of the full installation
|
### Usage and features of the full installation
|
||||||
|
|
||||||
- compression and decompression for [Brotli], [Lizard], [LZ4], [LZ5] and [ZStandard] within the 7-Zip container format
|
- compression and decompression for [Brotli], [Lizard], [LZ4], [LZ5] and [Zstandard] within the 7-Zip container format
|
||||||
- compression and decompression of [Lizard] (`.liz`), [LZ4] (`.lz4`), [LZ5] (`.lz5`) and [ZStandard] (`.zst`) files
|
- compression and decompression of [Lizard] (`.liz`), [LZ4] (`.lz4`), [LZ5] (`.lz5`) and [Zstandard] (`.zst`) files
|
||||||
- included [lzip] decompression support, patch from: http://download.savannah.gnu.org/releases/lzip/7zip/
|
- included [lzip] decompression support, patch from: http://download.savannah.gnu.org/releases/lzip/7zip/
|
||||||
- right click and _"Add to xy.7z"_ will use the last selected method (codec, level and threads)
|
- right click and _"Add to xy.7z"_ will use the last selected method (codec, level and threads)
|
||||||
- the FileManager ListBox will show more information about these codecs now
|
- the FileManager ListBox will show more information about these codecs now
|
||||||
@@ -123,7 +123,7 @@ Codecs:
|
|||||||

|

|
||||||

|

|
||||||
|
|
||||||
## ZStandard codec Plugin for 7-Zip
|
## Zstandard codec Plugin for 7-Zip
|
||||||
|
|
||||||
### Installation (via plugin)
|
### Installation (via plugin)
|
||||||
|
|
||||||
@@ -182,7 +182,7 @@ Codecs:
|
|||||||
|
|
||||||
### Usage (codec plugin)
|
### Usage (codec plugin)
|
||||||
|
|
||||||
- compression and decompression for [Brotli], [Lizard], [LZ4], [LZ5] and [ZStandard] within the 7-Zip container format
|
- compression and decompression for [Brotli], [Lizard], [LZ4], [LZ5] and [Zstandard] within the 7-Zip container format
|
||||||
- you can only create `.7z` files, the files like `.lz4`, `.lz5` and `.zst` are not covered by the plugins
|
- you can only create `.7z` files, the files like `.lz4`, `.lz5` and `.zst` are not covered by the plugins
|
||||||
- when compressing binaries (*.exe, *.dll), you have to explicitly disable the bcj2 filter via `-m0=bcj`,
|
- when compressing binaries (*.exe, *.dll), you have to explicitly disable the bcj2 filter via `-m0=bcj`,
|
||||||
when using only the plugin dll's
|
when using only the plugin dll's
|
||||||
@@ -198,7 +198,7 @@ Codecs:
|
|||||||
- download [TotalCmd.7z](https://github.com/mcmilk/7-Zip-zstd/releases)
|
- download [TotalCmd.7z](https://github.com/mcmilk/7-Zip-zstd/releases)
|
||||||
- install it, by replacing the files `tc7z.dll` and `tc7z64.dll` with the new ones
|
- install it, by replacing the files `tc7z.dll` and `tc7z64.dll` with the new ones
|
||||||
- you can check the Total Commander Forum for more information about this [DLL Files](http://ghisler.ch/board/viewtopic.php?p=319216)
|
- you can check the Total Commander Forum for more information about this [DLL Files](http://ghisler.ch/board/viewtopic.php?p=319216)
|
||||||
- decompression for [Brotli], [Lizard], [LZ4], [LZ5] and [ZStandard] ot the 7-Zip `.7z` format
|
- decompression for [Brotli], [Lizard], [LZ4], [LZ5] and [Zstandard] ot the 7-Zip `.7z` format
|
||||||
will work out of the box with Total Commander now :-)
|
will work out of the box with Total Commander now :-)
|
||||||
|
|
||||||
## Benchmarks
|
## Benchmarks
|
||||||
@@ -221,7 +221,7 @@ For the benchmarks I am using Windows 7 64bit on my Laptop which has the followi
|
|||||||
## Links
|
## Links
|
||||||
|
|
||||||
- [7-Zip Homepage](http://www.7-zip.org/)
|
- [7-Zip Homepage](http://www.7-zip.org/)
|
||||||
- [7-Zip ZStandard Homepage](https://mcmilk.de/projects/7-Zip-zstd/)
|
- [7-Zip Zstandard Homepage](https://mcmilk.de/projects/7-Zip-zstd/)
|
||||||
- [Request for inclusion](https://sourceforge.net/p/sevenzip/discussion/45797/thread/a7e4f3f3/) into the mainline 7-Zip:
|
- [Request for inclusion](https://sourceforge.net/p/sevenzip/discussion/45797/thread/a7e4f3f3/) into the mainline 7-Zip:
|
||||||
- result, will currently not included :(
|
- result, will currently not included :(
|
||||||
|
|
||||||
@@ -238,7 +238,7 @@ You find this project useful, maybe you consider a donation ;-)
|
|||||||
- [Lizard] Version 1.0
|
- [Lizard] Version 1.0
|
||||||
- [LZ4] Version 1.7.5
|
- [LZ4] Version 1.7.5
|
||||||
- [LZ5] Version 1.5
|
- [LZ5] Version 1.5
|
||||||
- [ZStandard] Version 1.3.0
|
- [Zstandard] Version 1.3.0
|
||||||
|
|
||||||
/TR 2017-07-12
|
/TR 2017-07-12
|
||||||
|
|
||||||
@@ -247,6 +247,6 @@ You find this project useful, maybe you consider a donation ;-)
|
|||||||
[Brotli]:https://github.com/google/brotli/
|
[Brotli]:https://github.com/google/brotli/
|
||||||
[LZ4]:https://github.com/lz4/lz4/
|
[LZ4]:https://github.com/lz4/lz4/
|
||||||
[LZ5]:https://github.com/inikep/lz5/
|
[LZ5]:https://github.com/inikep/lz5/
|
||||||
[ZStandard]:https://github.com/facebook/zstd/
|
[Zstandard]:https://github.com/facebook/zstd/
|
||||||
[Lizard]:https://github.com/inikep/lizard/
|
[Lizard]:https://github.com/inikep/lizard/
|
||||||
[ImDisk]:https://sourceforge.net/projects/imdisk-toolkit/
|
[ImDisk]:https://sourceforge.net/projects/imdisk-toolkit/
|
||||||
|
|||||||
Reference in New Issue
Block a user