chrislake / 7zsfxmm Goto Github PK
View Code? Open in Web Editor NEW7-Zip sfx Modified Module
License: GNU Lesser General Public License v3.0
7-Zip sfx Modified Module
License: GNU Lesser General Public License v3.0
I built a SFX using 7zip and the SFXMod.
This successfully extracts files and runs the RunProgram. However it looks like it is completely ignoring the return code of the RunProgram and spawning a FinishMessage instead of the expected ErrorMessage.
Is this the correct behaviour? I could not find any explicit documentation around that, but many forum posts mention that 7zip SFX are designed to intercept and handle the return codes
The RunProgram is a batch script calling a python script using a specific Python version.
The python script returns 2 if fails, and the batch script does the same.
Building the 7zsfx using Visual Studio 10 and Windows SDK 7.1 fails with the following error:
===============================
All-x86
===============================
Creating ..\Intermediate\7zsd_All
stdafx.cpp
c:\users\nik\desktop\7zsfxmm\7zsfxmod\sources\stdafx.h(21) : error C2220: warning treated as error - no 'object' file generated
c:\users\nik\desktop\7zsfxmm\7zsfxmod\sources\stdafx.h(21) : warning C4005: '_NO_EXCEPTIONS' : macro redefinition
command-line arguments : see previous definition of '_NO_EXCEPTIONS'
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\Bin\amd64\cl.EXE"' : return code '0x2'
Stop.
Removing the -WX flag from makefile results in this error:
===============================
All-x86
===============================
stdafx.cpp
c:\users\nik\desktop\7zsfxmm\7zsfxmod\sources\stdafx.h(21) : warning C4005: '_NO_EXCEPTIONS' : macro redefinition
command-line arguments : see previous definition of '_NO_EXCEPTIONS'
stdafx.cpp
c:\users\nik\desktop\7zsfxmm\7zsfxmod\sources\stdafx.h(21) : warning C4005: '_NO_EXCEPTIONS' : macro redefinition
command-line arguments : see previous definition of '_NO_EXCEPTIONS'
archive.cpp
c:\users\nik\desktop\7zsfxmm\7zsfxmod\sources\stdafx.h(21) : warning C4005: '_NO_EXCEPTIONS' : macro redefinition
command-line arguments : see previous definition of '_NO_EXCEPTIONS'
cmdline.cpp
c:\users\nik\desktop\7zsfxmm\7zsfxmod\sources\stdafx.h(21) : warning C4005: '_NO_EXCEPTIONS' : macro redefinition
command-line arguments : see previous definition of '_NO_EXCEPTIONS'
Config.cpp
c:\users\nik\desktop\7zsfxmm\7zsfxmod\sources\stdafx.h(21) : warning C4005: '_NO_EXCEPTIONS' : macro redefinition
command-line arguments : see previous definition of '_NO_EXCEPTIONS'
NMAKE : fatal error U1073: don't know how to make 'sources/Exceptions.cpp'
Stop.
Hi, first, thank you for updating this module.
My request is simple: could you release 32 bit binaries, I'm still using these for universal compatibility (actually I don't see the point of 64 bits binaries for makings SFX installers).
Thank you.
edit: never mind, I found the 1700 archive with 32 bits versions, seems unaffected by the 1703 bug.
Currently, 7zSD modified module only can extract packed files that are inside of the exe file (created using copy /b method).
Igor Pavlov's original SFX 7-Zip module now allows to extract compressed files from "inside" or "outside" of the exe file (as long as the packed file has the same name of the executable file and both files are on the same folder).
Can you add this feature to the sfx modified module?
This is useful for compressed files with more of 4GB size.
hello
`
;!@install@!UTF-8!
GUIMode="0"
SetEnvironment="x=%PROGRAMFILES%\Overclocking\"
SetEnvironment="u=Overclocking"
Shortcut="P,{%x%ATI\ATIFlash\ATIWinflash.exe},{},{%u%\ATI\ATIFlash},{AMD ATIFlash est utilisé pour flasher les cartes graphiques AMD Radeon RX Vega, RX 580, RX 480 et anciennes},{ATI Flash}"
;!@InstallEnd@!`
Variable %PROGRAMFILES% install to C:\Program Files (x86)
My env:
`ProgramData=C:\ProgramData
PROGRAMFILES=C:\Program Files
ProgramFiles(x86)=C:\Program Files (x86)
ProgramW6432=C:\Program Files`
7z Setup SFX (x86) 1.7.0 3900
7Zip 17.0.0 64 bits
debug:
` Module - x86, OS - x64
Folders:
7zSfxFolder00=C:\Users\Alpha\Desktop
7zSfxFolder02=C:\Users\Alpha\AppData\Roaming\Microsoft\Windows\Start Menu\Programs
7zSfxFolder05=C:\Users\Alpha\Documents
7zSfxFolder06=C:\Users\Alpha\Favorites
7zSfxFolder07=C:\Users\Alpha\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
7zSfxFolder08=C:\Users\Alpha\AppData\Roaming\Microsoft\Windows\Recent
7zSfxFolder09=C:\Users\Alpha\AppData\Roaming\Microsoft\Windows\SendTo
7zSfxFolder11=C:\Users\Alpha\AppData\Roaming\Microsoft\Windows\Start Menu
7zSfxFolder13=C:\Users\Alpha\Music
7zSfxFolder14=C:\Users\Alpha\Videos
7zSfxFolder16=C:\Users\Alpha\Desktop
7zSfxFolder19=C:\Users\Alpha\AppData\Roaming\Microsoft\Windows\Network Shortcuts
7zSfxFolder20=C:\Windows\Fonts
7zSfxFolder21=C:\Users\Alpha\AppData\Roaming\Microsoft\Windows\Templates
7zSfxFolder22=C:\ProgramData\Microsoft\Windows\Start Menu
7zSfxFolder23=C:\ProgramData\Microsoft\Windows\Start Menu\Programs
7zSfxFolder24=C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
7zSfxFolder25=C:\Users\Public\Desktop
7zSfxFolder26=C:\Users\Alpha\AppData\Roaming
7zSfxFolder27=C:\Users\Alpha\AppData\Roaming\Microsoft\Windows\Printer Shortcuts
7zSfxFolder28=C:\Users\Alpha\AppData\Local
7zSfxFolder29=C:\Users\Alpha\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
7zSfxFolder30=C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
7zSfxFolder31=C:\Users\Alpha\Favorites
7zSfxFolder32=C:\Users\Alpha\AppData\Local\Microsoft\Windows\INetCache
7zSfxFolder33=C:\Users\Alpha\AppData\Local\Microsoft\Windows\INetCookies
7zSfxFolder34=C:\Users\Alpha\AppData\Local\Microsoft\Windows\History
7zSfxFolder35=C:\ProgramData
7zSfxFolder36=C:\Windows
7zSfxFolder37=C:\Windows\system32
7zSfxFolder38=C:\Program Files (x86)
7zSfxFolder39=C:\Users\Alpha\Pictures
7zSfxFolder40=C:\Users\Alpha
7zSfxFolder41=C:\Windows\SysWOW64
7zSfxFolder42=C:\Program Files (x86)
7zSfxFolder43=C:\Program Files (x86)\Common Files
7zSfxFolder44=C:\Program Files (x86)\Common Files
7zSfxFolder45=C:\ProgramData\Microsoft\Windows\Templates
7zSfxFolder46=C:\Users\Public\Documents
7zSfxFolder47=C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools
7zSfxFolder48=C:\Users\Alpha\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Administrative Tools
7zSfxFolder53=C:\Users\Public\Music
7zSfxFolder54=C:\Users\Public\Pictures
7zSfxFolder55=C:\Users\Public\Videos
7zSfxFolder56=C:\Windows\resources
7zSfxFolder59=C:\Users\Alpha\AppData\Local\Microsoft\Windows\Burn\Burn
Vars:
7zSfxVarCmdLine0="E:\Unattended\AddonsIcare\SFXOC\SFX_OC.exe"
7zSfxVarCmdLine1=
7zSfxVarCmdLine2=
7zSfxVarModulePlatform=x86
7zSfxVarSystemLanguage=1036
7zSfxVarSystemPlatform=x64
%%M=SFX_OC.exe
%%P=x64
%%S=E:\Unattended\AddonsIcare\SFXOC
%%T=C:\Users\Alpha\AppData\Local\Temp\7ZipSfx.000
CommonDesktop=C:\Users\Public\Desktop
CommonDocuments=C:\Users\Public\Documents
MyDocs=C:\Users\Alpha\Documents
MyDocuments=C:\Users\Alpha\Documents
UserDesktop=C:\Users\Alpha\Desktop`
Tested with 1.7.0 3901 then xtract: error unsupport method
On the latest Windows 10 1703 release, the SFX from the site fails to start, nothing, not even a crash dump to investigate. However, if I use windbg.exe, depends.exe or Visual Studio (2017 community), to run the SFX then all works well.
I successfully managed to compile the 7zsd_All_x64.sfx from source (build 1.7.0.3900) and started to look at the problem by adding a MessageBoxA() call in to WinMain, but it seems that it doesn't even get that far as the message box is not displayed.
Using Process Monitor, the best I have been able to see is that it fails just prior to loading the oleacc.dll, though why only on actual execution as opposed to when run with windbg etc. I have no idea.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.