diff --git a/etc/7zSD.cmd b/etc/7zSD.cmd new file mode 100644 index 0000000..a44adda --- /dev/null +++ b/etc/7zSD.cmd @@ -0,0 +1,48 @@ +@echo off +setlocal ENABLEDELAYEDEXPANSION + +REM Print help screen +if "%~4"=="" ( + echo 7-Zip SFX Builder + echo Usage: 7zSD.cmd ^ ^ ^ ^ + exit /b 1 +) + +REM Generate temp file names +set "SEVENZIP_SFX_CFG=%TMP%\~7zSD%RANDOM%%RANDOM%.cf" +set "SEVENZIP_SFX_ARC=%TMP%\~7zSD%RANDOM%%RANDOM%.7z" + +REM Create the configuration file +echo ;^^!@Install@^^!UTF-8^^!> "%SEVENZIP_SFX_CFG%" +echo Title="%~3">> "%SEVENZIP_SFX_CFG%" +echo ExecuteFile="%~n4.exe">> "%SEVENZIP_SFX_CFG%" +echo ;^^!@InstallEnd@^^!>> "%SEVENZIP_SFX_CFG%" + +REM Create the 7-Zip archive +"%~dp0\7za.exe" a -t7z "%SEVENZIP_SFX_ARC%" "%~1" +if %ERRORLEVEL% NEQ 0 ( + del "%SEVENZIP_SFX_CFG%" + del "%SEVENZIP_SFX_ARC%" + exit /b 1 +) + +REM Rename the embedded file +"%~dp0\7za.exe" rn "%SEVENZIP_SFX_ARC%" "%~nx1" "%~n4.exe" +if %ERRORLEVEL% NEQ 0 ( + del "%SEVENZIP_SFX_CFG%" + del "%SEVENZIP_SFX_ARC%" + exit /b 1 +) + +REM Actually build the SFX file +copy /b "%~dp0\7zSD.sfx" + "%SEVENZIP_SFX_CFG%" + "%SEVENZIP_SFX_ARC%" "%~2" +if %ERRORLEVEL% NEQ 0 ( + del "%SEVENZIP_SFX_CFG%" + del "%SEVENZIP_SFX_ARC%" + exit /b 1 +) + +REM Final clean-up +del "%SEVENZIP_SFX_CFG%" +del "%SEVENZIP_SFX_ARC%" +exit /b 0 diff --git a/etc/7zSD.diff b/etc/7zSD.diff new file mode 100644 index 0000000..ecc58e5 --- /dev/null +++ b/etc/7zSD.diff @@ -0,0 +1,326 @@ + CPP/7zip/Bundles/SFXSetup/Compat.xml | 1 + + CPP/7zip/Bundles/SFXSetup/SfxSetup.cpp | 52 +++++++++++++++++++----- + CPP/7zip/Bundles/SFXSetup/resource.rc | 4 +- + CPP/7zip/UI/Explorer/MyMessages.cpp | 4 +- + CPP/7zip/UI/Explorer/MyMessages.h | 2 +- + CPP/7zip/UI/FileManager/FormatUtils.cpp | 2 +- + CPP/7zip/UI/FileManager/ProgressDialog.cpp | 4 +- + CPP/Common/MyWindows.h | 1 + + CPP/Windows/FileDir.cpp | 63 ++++++++++++++++++++++++++---- + CPP/Windows/FileDir.h | 1 + + 10 files changed, 110 insertions(+), 24 deletions(-) + +diff --git a/CPP/7zip/Bundles/SFXSetup/Compat.xml b/CPP/7zip/Bundles/SFXSetup/Compat.xml +new file mode 100644 +index 0000000..76fecef +--- /dev/null ++++ b/CPP/7zip/Bundles/SFXSetup/Compat.xml +@@ -0,0 +1 @@ ++ +\ No newline at end of file +diff --git a/CPP/7zip/Bundles/SFXSetup/SfxSetup.cpp b/CPP/7zip/Bundles/SFXSetup/SfxSetup.cpp +index aef2e19..7f856f1 100644 +--- a/CPP/7zip/Bundles/SFXSetup/SfxSetup.cpp ++++ b/CPP/7zip/Bundles/SFXSetup/SfxSetup.cpp +@@ -37,6 +37,27 @@ static CFSTR kTempDirPrefix = FTEXT("7zS"); + + #define _SHELL_EXECUTE + ++static HWND GetCurrentHwnd(void) ++{ ++ HWND result = ::GetActiveWindow(); ++ if(!result) ++ { ++ for (int i = 0; i < 256; ++i) ++ { ++ if(i > 0) ++ { ++ ::Sleep(1); /*some delay*/ ++ } ++ result = ::GetForegroundWindow(); ++ if(result) ++ { ++ break; /*done*/ ++ } ++ } ++ } ++ return result; ++} ++ + static bool ReadDataString(CFSTR fileName, LPCSTR startID, + LPCSTR endID, AString &stringResult) + { +@@ -145,7 +166,7 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE /* hPrevInstance */, + + UString archiveName, switches; + #ifdef _SHELL_EXECUTE +- UString executeFile, executeParameters; ++ UString executeFile, executeParameters, executeErrorMsg; + #endif + NCommandLineParser::SplitCommandLine(GetCommandLineW(), archiveName, switches); + +@@ -191,7 +212,7 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE /* hPrevInstance */, + dirPrefix = pairs[index].String; + if (!installPrompt.IsEmpty() && !assumeYes) + { +- if (MessageBoxW(0, installPrompt, friendlyName, MB_YESNO | ++ if (MessageBoxW(NULL, installPrompt, friendlyName, MB_YESNO | MB_SYSTEMMODAL | + MB_ICONQUESTION) != IDYES) + return 0; + } +@@ -200,6 +221,7 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE /* hPrevInstance */, + #ifdef _SHELL_EXECUTE + executeFile = GetTextConfigValue(pairs, L"ExecuteFile"); + executeParameters = GetTextConfigValue(pairs, L"ExecuteParameters"); ++ executeErrorMsg = GetTextConfigValue(pairs, L"ExecuteErrorMsg"); + #endif + } + +@@ -243,7 +265,7 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE /* hPrevInstance */, + { + if (errorMessage.IsEmpty()) + errorMessage = NError::MyFormatMessage(result); +- ::MessageBoxW(0, errorMessage, NWindows::MyLoadString(IDS_EXTRACTION_ERROR_TITLE), MB_ICONERROR); ++ ::MessageBoxW(NULL, errorMessage, NWindows::MyLoadString(IDS_EXTRACTION_ERROR_TITLE), MB_ICONERROR | MB_SYSTEMMODAL); + } + } + return 1; +@@ -287,13 +309,25 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE /* hPrevInstance */, + execInfo.lpDirectory = NULL; + execInfo.nShow = SW_SHOWNORMAL; + execInfo.hProcess = 0; +- /* BOOL success = */ ::ShellExecuteEx(&execInfo); +- UINT32 result = (UINT32)(UINT_PTR)execInfo.hInstApp; +- if (result <= 32) ++ ++ for (;;) + { +- if (!assumeYes) +- ShowErrorMessage(L"Can not open file"); +- return 1; ++ execInfo.hwnd = GetCurrentHwnd(); /*prevent UAC dialog from appearing in the background!*/ ++ /* BOOL success = */ ::ShellExecuteEx(&execInfo); ++ UINT32 result = (UINT32)(UINT_PTR)execInfo.hInstApp; ++ if (result <= 32) ++ { ++ if (!assumeYes) ++ { ++ const wchar_t *const lpErrorMessage = executeErrorMsg.IsEmpty() ? L"Failed to launch installer. Please try again!" : executeErrorMsg; ++ if (MessageBoxW(NULL, lpErrorMessage, L"Setup", MB_SYSTEMMODAL | MB_ICONEXCLAMATION | MB_RETRYCANCEL) == IDRETRY) ++ { ++ continue; /*retry*/ ++ } ++ } ++ return 1; ++ } ++ break; /*success*/ + } + hProcess = execInfo.hProcess; + } +diff --git a/CPP/7zip/Bundles/SFXSetup/resource.rc b/CPP/7zip/Bundles/SFXSetup/resource.rc +index 47e1b76..c796e65 100644 +--- a/CPP/7zip/Bundles/SFXSetup/resource.rc ++++ b/CPP/7zip/Bundles/SFXSetup/resource.rc +@@ -1,14 +1,14 @@ + #include "../../MyVersionInfo.rc" + #include "resource.h" + +-MY_VERSION_INFO_APP("7z Setup SFX", "7zS.sfx") ++MY_VERSION_INFO_APP("Setup SFX", "7zS.sfx") + + IDI_ICON ICON "setup.ico" + + STRINGTABLE + BEGIN + IDS_EXTRACTION_ERROR_TITLE "Extraction Failed" +- IDS_EXTRACTION_ERROR_MESSAGE "File is corrupt" ++ IDS_EXTRACTION_ERROR_MESSAGE "File is corrupt. Please download again!" + IDS_CANNOT_CREATE_FOLDER "Cannot create folder '{0}'" + IDS_PROGRESS_EXTRACTING "Extracting" + END +diff --git a/CPP/7zip/UI/Explorer/MyMessages.cpp b/CPP/7zip/UI/Explorer/MyMessages.cpp +index 70c2a46..84ac8f4 100644 +--- a/CPP/7zip/UI/Explorer/MyMessages.cpp ++++ b/CPP/7zip/UI/Explorer/MyMessages.cpp +@@ -1,6 +1,6 @@ + // MyMessages.cpp + +-#include "StdAfx.h" ++//#include "StdAfx.h" + + #include "MyMessages.h" + +@@ -13,7 +13,7 @@ using namespace NWindows; + + void ShowErrorMessage(HWND window, LPCWSTR message) + { +- ::MessageBoxW(window, message, L"7-Zip", MB_OK | MB_ICONSTOP); ++ ::MessageBoxW(window, message, L"Setup", MB_OK | MB_SYSTEMMODAL | MB_ICONSTOP); + } + + void ShowErrorMessageHwndRes(HWND window, UINT resID) +diff --git a/CPP/7zip/UI/Explorer/MyMessages.h b/CPP/7zip/UI/Explorer/MyMessages.h +index d5822f4..3bd6e2e 100644 +--- a/CPP/7zip/UI/Explorer/MyMessages.h ++++ b/CPP/7zip/UI/Explorer/MyMessages.h +@@ -6,7 +6,7 @@ + #include "../../../Common/MyString.h" + + void ShowErrorMessage(HWND window, LPCWSTR message); +-inline void ShowErrorMessage(LPCWSTR message) { ShowErrorMessage(0, message); } ++inline void ShowErrorMessage(LPCWSTR message) { ShowErrorMessage(NULL, message); } + + void ShowErrorMessageHwndRes(HWND window, UInt32 langID); + void ShowErrorMessageRes(UInt32 langID); +diff --git a/CPP/7zip/UI/FileManager/FormatUtils.cpp b/CPP/7zip/UI/FileManager/FormatUtils.cpp +index 2143c3f..3a18712 100644 +--- a/CPP/7zip/UI/FileManager/FormatUtils.cpp ++++ b/CPP/7zip/UI/FileManager/FormatUtils.cpp +@@ -1,6 +1,6 @@ + // FormatUtils.cpp + +-#include "StdAfx.h" ++//#include "StdAfx.h" + + #include "../../../Common/IntToString.h" + +diff --git a/CPP/7zip/UI/FileManager/ProgressDialog.cpp b/CPP/7zip/UI/FileManager/ProgressDialog.cpp +index 65201a9..4d23499 100644 +--- a/CPP/7zip/UI/FileManager/ProgressDialog.cpp ++++ b/CPP/7zip/UI/FileManager/ProgressDialog.cpp +@@ -1,6 +1,6 @@ + // ProgressDialog.cpp + +-#include "StdAfx.h" ++//#include "StdAfx.h" + + #include "../../../Common/IntToString.h" + +@@ -165,7 +165,7 @@ bool CProgressDialog::OnButtonClicked(int buttonID, HWND buttonHWND) + bool paused = Sync.GetPaused(); + Sync.SetPaused(true); + _inCancelMessageBox = true; +- int res = ::MessageBoxW(*this, L"Are you sure you want to cancel?", _title, MB_YESNOCANCEL); ++ int res = ::MessageBoxW(*this, L"Are you sure you want to cancel?", _title, MB_YESNOCANCEL | MB_SYSTEMMODAL); + _inCancelMessageBox = false; + Sync.SetPaused(paused); + if (res == IDCANCEL || res == IDNO) +diff --git a/CPP/Common/MyWindows.h b/CPP/Common/MyWindows.h +index 139a4e8..c40767f 100644 +--- a/CPP/Common/MyWindows.h ++++ b/CPP/Common/MyWindows.h +@@ -6,6 +6,7 @@ + #ifdef _WIN32 + + #include ++#include + + #ifdef UNDER_CE + #undef VARIANT_TRUE +diff --git a/CPP/Windows/FileDir.cpp b/CPP/Windows/FileDir.cpp +index da71b71..f21400b 100644 +--- a/CPP/Windows/FileDir.cpp ++++ b/CPP/Windows/FileDir.cpp +@@ -14,6 +14,8 @@ + extern bool g_IsNT; + #endif + ++static CFSTR kTempDirName = FTEXT("TEMP"); ++ + using namespace NWindows; + using namespace NFile; + using namespace NName; +@@ -67,6 +69,36 @@ bool GetSystemDir(FString &path) + } + return (needLength > 0 && needLength <= MAX_PATH); + } ++ ++bool GetAppDataDir(FString &path) ++{ ++ HRESULT hResult; ++ static const int FolderId[] = { CSIDL_LOCAL_APPDATA, CSIDL_APPDATA, CSIDL_PROFILE, NULL }; ++ for(size_t i = 0; i < 3; ++i) ++ { ++ #ifndef _UNICODE ++ if (!g_IsNT) ++ { ++ TCHAR s[MAX_PATH + 2]; ++ s[0] = 0; ++ hResult = ::SHGetFolderPath(NULL, FolderId[i] | CSIDL_FLAG_CREATE, NULL, 0, s); ++ path = fas2fs(s); ++ } ++ else ++ #endif ++ { ++ WCHAR s[MAX_PATH + 2]; ++ s[0] = 0; ++ hResult = ::SHGetFolderPathW(NULL, FolderId[i] | CSIDL_FLAG_CREATE, NULL, 0, s); ++ path = us2fs(s); ++ } ++ if(hResult == S_OK) ++ { ++ return true; /*success*/ ++ } ++ } ++ return false; ++} + #endif + + bool SetDirTime(CFSTR path, const FILETIME *cTime, const FILETIME *aTime, const FILETIME *mTime) +@@ -566,7 +598,7 @@ bool MyGetTempPath(FString &path) + { + WCHAR s[MAX_PATH + 2]; + s[0] = 0; +- needLength = ::GetTempPathW(MAX_PATH + 1, s);; ++ needLength = ::GetTempPathW(MAX_PATH + 1, s); + path = us2fs(s); + } + return (needLength > 0 && needLength <= MAX_PATH); +@@ -671,12 +703,29 @@ bool CTempDir::Create(CFSTR prefix) + if (!Remove()) + return false; + FString tempPath; +- if (!MyGetTempPath(tempPath)) +- return false; +- if (!CreateTempFile(tempPath + prefix, true, _path, NULL)) +- return false; +- _mustBeDeleted = true; +- return true; ++ if (MyGetTempPath(tempPath)) ++ { ++ if (CreateTempFile(tempPath + prefix, true, _path, NULL)) ++ { ++ _mustBeDeleted = true; ++ return true; ++ } ++ } ++ if (GetAppDataDir(tempPath)) ++ { ++ tempPath.Add_PathSepar(); ++ tempPath += kTempDirName; ++ if(CreateComplexDir(tempPath)) ++ { ++ tempPath.Add_PathSepar(); ++ if (CreateTempFile(tempPath + prefix, true, _path, NULL)) ++ { ++ _mustBeDeleted = true; ++ return true; ++ } ++ } ++ } ++ return false; + } + + bool CTempDir::Remove() +diff --git a/CPP/Windows/FileDir.h b/CPP/Windows/FileDir.h +index b13d1cc..1d87bbf 100644 +--- a/CPP/Windows/FileDir.h ++++ b/CPP/Windows/FileDir.h +@@ -13,6 +13,7 @@ namespace NDir { + + bool GetWindowsDir(FString &path); + bool GetSystemDir(FString &path); ++bool GetAppDataDir(FString &path); + + bool SetDirTime(CFSTR path, const FILETIME *cTime, const FILETIME *aTime, const FILETIME *mTime); + bool SetFileAttrib(CFSTR path, DWORD attrib); diff --git a/etc/7zSD.sfx b/etc/7zSD.sfx new file mode 100644 index 0000000..4a8f0c3 Binary files /dev/null and b/etc/7zSD.sfx differ diff --git a/etc/7za.exe b/etc/7za.exe new file mode 100644 index 0000000..dd6cc75 Binary files /dev/null and b/etc/7za.exe differ diff --git a/etc/setup/wrapper.nsi b/etc/setup/wrapper.nsi deleted file mode 100644 index da0eaff..0000000 --- a/etc/setup/wrapper.nsi +++ /dev/null @@ -1,214 +0,0 @@ -; /////////////////////////////////////////////////////////////////////////////// -; // Simple x264 Launcher -; // Copyright (C) 2004-2016 LoRd_MuldeR -; // -; // This program is free software; you can redistribute it and/or modify -; // it under the terms of the GNU General Public License as published by -; // the Free Software Foundation; either version 2 of the License, or -; // (at your option) any later version. -; // -; // This program is distributed in the hope that it will be useful, -; // but WITHOUT ANY WARRANTY; without even the implied warranty of -; // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -; // GNU General Public License for more details. -; // -; // You should have received a copy of the GNU General Public License along -; // with this program; if not, write to the Free Software Foundation, Inc., -; // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -; // -; // http://www.gnu.org/licenses/gpl-2.0.txt -; /////////////////////////////////////////////////////////////////////////////// - -;-------------------------------- -;Basic Defines -;-------------------------------- - -!ifndef X264_BUILD - !error "X264_BUILD is not defined !!!" -!endif -!ifndef X264_DATE - !error "X264_DATE is not defined !!!" -!endif -!ifndef X264_OUTPUT_FILE - !error "X264_OUTPUT_FILE is not defined !!!" -!endif -!ifndef X264_SOURCE_FILE - !error "X264_SOURCE_FILE is not defined !!!" -!endif -!ifndef X264_UPX_PATH - !error "X264_UPX_PATH is not defined !!!" -!endif - -;Web-Site -!define MyWebSite "http://mulder.at.gg/" - -;Installer file name -!define InstallerFileName "$PLUGINSDIR\x264_x64-SETUP-r${X264_BUILD}.exe" - -;-------------------------------- -;Includes -;-------------------------------- - -!include `LogicLib.nsh` -!include `StdUtils.nsh` - - -;-------------------------------- -;Installer Attributes -;-------------------------------- - -XPStyle on -RequestExecutionLevel user -InstallColors /windows -Name "Simple x264 Launcher [Build #${X264_BUILD}]" -OutFile "${X264_OUTPUT_FILE}" -BrandingText "${X264_DATE} / Build #${X264_BUILD}" -Icon "${NSISDIR}\Contrib\Graphics\Icons\orange-install.ico" -ChangeUI all "${NSISDIR}\Contrib\UIs\sdbarker_tiny.exe" -ShowInstDetails nevershow -AutoCloseWindow true -InstallDir "" - - -;-------------------------------- -;Page Captions -;-------------------------------- - -SubCaption 0 " " -SubCaption 1 " " -SubCaption 2 " " -SubCaption 3 " " -SubCaption 4 " " - - -;-------------------------------- -;Compressor -;-------------------------------- - -!packhdr "$%TEMP%\exehead.tmp" '"${X264_UPX_PATH}\upx.exe" --brute "$%TEMP%\exehead.tmp"' - - -;-------------------------------- -;Reserved Files -;-------------------------------- - -ReserveFile "${NSISDIR}\Plugins\System.dll" -ReserveFile "${NSISDIR}\Plugins\StdUtils.dll" -ReserveFile "${NSISDIR}\Plugins\SelfDel.dll" - - -;-------------------------------- -;Version Info -;-------------------------------- - -!searchreplace PRODUCT_VERSION_DATE "${X264_DATE}" "-" "." -VIProductVersion "${PRODUCT_VERSION_DATE}.${X264_BUILD}" - -VIAddVersionKey "Author" "LoRd_MuldeR " -VIAddVersionKey "Comments" "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version." -VIAddVersionKey "CompanyName" "Free Software Foundation" -VIAddVersionKey "FileDescription" "Simple x264 Launcher [Build #${X264_BUILD}]" -VIAddVersionKey "FileVersion" "${PRODUCT_VERSION_DATE}.${X264_BUILD}" -VIAddVersionKey "LegalCopyright" "Copyright 2004-2016 LoRd_MuldeR" -VIAddVersionKey "LegalTrademarks" "GNU" -VIAddVersionKey "OriginalFilename" "x264_x64.${X264_DATE}.exe" -VIAddVersionKey "ProductName" "Simple x264 Launcher" -VIAddVersionKey "ProductVersion" "Build #${X264_BUILD} (${X264_DATE})" -VIAddVersionKey "Website" "${MyWebSite}" - - -;-------------------------------- -;Installer initialization -;-------------------------------- - -Section "-LaunchTheInstaller" - SetDetailsPrint textonly - DetailPrint "Launching installer, please stay tuned..." - SetDetailsPrint listonly - - InitPluginsDir - SetOutPath "$PLUGINSDIR" - - ${StdUtils.TestParameter} $R0 "Update" - ${If} "$R0" == "true" - SetFileAttributes "$EXEPATH" FILE_ATTRIBUTE_NORMAL - SelfDel::del /RMDIR - ${EndIf} - - SetOverwrite on - File "/oname=${InstallerFileName}" "${X264_SOURCE_FILE}" - - ; -------- - - ${If} "$EXEFILE" == "x264_launcher.exe" - MessageBox MB_ICONSTOP|MB_TOPMOST "Sorry, you must NOT rename the installation program to 'x264_launcher.exe'. Please re-rename the installer executable file (e.g. to 'x264_x64-Setup.exe') and then try again!" - Quit - ${EndIf} - - ; -------- - - ${StdUtils.GetAllParameters} $R9 0 - ${IfThen} "$R9" == "too_long" ${|} StrCpy $R9 "" ${|} - - ${IfNot} "$R9" == "" - DetailPrint "Parameters: $R9" - ${EndIf} - - ; -------- - - ${Do} - SetOverwrite ifdiff - File "/oname=${InstallerFileName}" "${X264_SOURCE_FILE}" - - DetailPrint "ExecShellWait: ${InstallerFileName}" - ${StdUtils.ExecShellWaitEx} $R1 $R2 "${InstallerFileName}" "open" '$R9' - DetailPrint "Result: $R1 ($R2)" - - ${IfThen} $R1 == "no_wait" ${|} Goto RunSuccess ${|} - - ${If} $R1 == "ok" - Sleep 333 - HideWindow - ${StdUtils.WaitForProcEx} $R1 $R2 - Goto RunSuccess - ${EndIf} - - MessageBox MB_RETRYCANCEL|MB_ICONSTOP|MB_TOPMOST "Failed to launch the installer. Please try again!" IDCANCEL FallbackMode - ${Loop} - - - ; ----------- - - FallbackMode: - - DetailPrint "Installer not launched yet, trying fallback mode!" - - SetOverwrite ifdiff - File "/oname=${InstallerFileName}" "${X264_SOURCE_FILE}" - - ClearErrors - ExecShell "open" "${InstallerFileName}" '$R9' SW_SHOWNORMAL - IfErrors 0 RunSuccess - - ClearErrors - ExecShell "" "${InstallerFileName}" '$R9' SW_SHOWNORMAL - IfErrors 0 RunSuccess - - ; -------- - - SetDetailsPrint both - DetailPrint "Failed to launch installer :-(" - SetDetailsPrint listonly - - SetErrorLevel 1 - SetOutPath "$TEMP" - Abort "Aborted." - - ; -------- - - RunSuccess: - - Delete /REBOOTOK "${InstallerFileName}" - SetErrorLevel 0 - SetOutPath "$TEMP" -SectionEnd diff --git a/src/version.h b/src/version.h index d713eba..4ee415c 100644 --- a/src/version.h +++ b/src/version.h @@ -26,7 +26,7 @@ #define VER_X264_MAJOR 2 #define VER_X264_MINOR 7 #define VER_X264_PATCH 5 -#define VER_X264_BUILD 1053 +#define VER_X264_BUILD 1054 #define VER_X264_PORTABLE_EDITION (0) diff --git a/z_build.bat b/z_build.bat index 1d77721..cbe6c14 100644 --- a/z_build.bat +++ b/z_build.bat @@ -176,10 +176,10 @@ echo. >> "%PACK_PATH%\BUILD_TAG.txt" REM /////////////////////////////////////////////////////////////////////////// REM // Build the installer REM /////////////////////////////////////////////////////////////////////////// -"%NSIS_PATH%\makensis.exe" "/DX264_UPX_PATH=%UPX3_PATH%" "/DX264_DATE=%ISO_DATE%" "/DX264_BUILD=%BUILD_NO%" "/DX264_OUTPUT_FILE=%OUT_PATH%.sfx" "/DX264_SOURCE_PATH=%PACK_PATH%" "%~dp0\etc\setup\setup.nsi" +"%NSIS_PATH%\makensis.exe" "/DX264_UPX_PATH=%UPX3_PATH%" "/DX264_DATE=%ISO_DATE%" "/DX264_BUILD=%BUILD_NO%" "/DX264_OUTPUT_FILE=%OUT_PATH%.sfx" "/DX264_SOURCE_PATH=%PACK_PATH%" "%~dp0\etc\setup\setup.nsi" if not "%ERRORLEVEL%"=="0" goto BuildError -"%NSIS_PATH%\makensis.exe" "/DX264_UPX_PATH=%UPX3_PATH%" "/DX264_DATE=%ISO_DATE%" "/DX264_BUILD=%BUILD_NO%" "/DX264_OUTPUT_FILE=%OUT_PATH%.exe" "/DX264_SOURCE_FILE=%OUT_PATH%.sfx" "%~dp0\etc\setup\wrapper.nsi" +call "%~dp0\etc\7zSD.cmd" "%OUT_PATH%.sfx" "%OUT_PATH%.exe" "Simple x264/x265 Launcher" "x264_launcher-setup-r%BUILD_NO%" if not "%ERRORLEVEL%"=="0" goto BuildError attrib +R "%OUT_PATH%.exe"