Following on from my last post which talked about deployment of VLC Media Player 2.0.4 we are going to look at pushing out 7-Zip 9.20 in the enterprise.
7-Zip has been around for as long as I can remember and its a very good alternative to WinRAR and WinZIP – both of which are chargeable. Functionality wise its definitely on pair with any paid solution available today. Also .7z compression format is one of the best to use if you care about final file size – to quote 7-Zip themselves here is what they have to say:
Compression ratio results are very dependent upon the data used for the tests. Usually, 7-Zip compresses to 7z format 30-70% better than to zip format. And 7-Zip compresses to zip format 2-10% better than most of other zip compatible programs.
Quick compression ratio stats show how well 7-Zip does against the competition:
FILE SETS: Mozilla Firefox 1.0.7 for Windows and Google Earth 3.0.0616 for Windows after full installation.
To get our deployment started we need a copy of .msi installer package provided by 7-Zip guys available on their website:
Next file required contains all customizations packaged up in an .mst transform file available here:
1) Removal of 7-Zip Help shortcuts:
2) and Windows file type associations:
To actually install the application you need to use the following command:
MSIEXEC.EXE /I 7z920.msi TRANSFORMS=7-Zip_Customizations.mst /norestart /qb!
And that’s about it! You should be up and running with latest version of 7-Zip installed.
If you opt not to use the .mst file your .zip files will be handled by Windows Explorer which is pretty rubbish. Example:
With no .mst file .7z and .rar extensions not associated with 7-zip and we simply cannot open the archive files:
On the contrary when .mst is used all archive formats are associated with 7-Zip by default which is what we want:
Bottom line – use the provided .mst 😉
I keep receiving an error that states “A network error occurred while attempting to read from the file C:\7-Zip\target.msi” What am I doing wrong?
What’s target.msi? Is it just 7z920.msi that you have renamed?
What’s the command you’re running to get 7-zip installed? Can you paste it here?
Also, can you simply double click on the 7z920.msi and get it installed that way? Does it work?
I’m using MDT and the error I’m now getting is unexpected return code 1639.
This is my command MSIEXEC.EXE /1 7ziplog.txt /i 7z920.msi TRANSFORMS=7-Zip_Customizations.mst /suppress /qb!
Oh, and yes, the MSI file does install correctly. I’ve changed the install command a few times after the original failed to deploy, and the one I previously posted was my most recent attempt.
I ended up copying the 7zip .msi file and making an additional .msi file in the same folder named target.msi. For some reason this is the only way it will allow me to install from my network drive.
The mst file is perfect, by the way! Thanks for everything.
I looked for a contact page but did’t fine one. Your transform has all the file extension associations in the registry table which will work but isn’t the approach recommended for Windows Installer packages. Extensions should be registered in the Extension table with associated in the MIME, Class and ProgID’s tables.
I need to get this working for a customer so if I go down the path of association the extensions for deployment I’ll share my output.
Thanks for your comment.
I must admit that I’m not a software packager by default so it was always very likely that the .mst wasn’t as Microsoft would have like it to be 😉
Please do share your output once you have it – I’m always willing to learn.