问题
Currently, I am making a SFX with 7zip using the following config:
;!@Install@!UTF-8!
InstallPath="C:\\test"
GUIMode="2"
RunProgram="7z465.exe"
;!@InstallEnd@!
I then package 7z465.exe into Setup.7z, and then call the following line in a batch file:
copy /b "C:\Program Files\7-Zip\7zSD.sfx" + config.txt + ".\Release\Setup.7z" .\Release\Setup.exe
When I run the resulting Setup.exe, It extracts fine and launches the 7z465.exe as well, but it is still extracting to some 7zip temp folder for the current user and not C:\test!
Running as administrator seems to have no effect either.
Anyone have any idea why this is happening?
回答1:
Use modified 7zsd.sfx from http://7zsfx.solta.ru. InstallPath only works with the modified package.
回答2:
I never found out why this was happening, and after hours of struggling with it, I switched to WinRAR. Granted, its got some quirks of its own, but I was at least able to figure those out and get it running for my needs.
Would recommend WinRAR over 7z for SFX stuff.
来源:https://stackoverflow.com/questions/2568924/why-does-7zip-ignore-my-installpath-when-making-a-sfx-installer