This is a utility with a graphical user interface and a command line interface that can be used to view and extract the contents of an MSI file.
To extract from the command line:
lessmsi x <msiFileName> [<outputDir>]
For more command line usage see CommandLine.
Windows Explorer Integration
Lessmsi also integrates with Windows Explorer so that you can right-click on a Windows Installer file (.msi file) and select "Extract Files" to extract it into a folder right there:
Just select Preferences from the Edit menu to enable (or disable) the explorer integration:
In addition to allowing you to extract files from the command line and from inside Windows Explorer, lessmsi has a graphical user interface that allows you to view detailed information about any MSI file.
MSI Table Viewer
Windows Installer (.msi files) are based on an internal database of tables. Lessmsi features a viewer for those tables. Useful for people who work a lot with installers.
Suggestion? Problem? Comment?
If you have a problem please submit it by clicking in the Issue tracker and I'll look into it when I can.
Pull requests are welcome! Just make sure the Travis-CI build (compile only) passes and you run unit tests and I'll merge your contributions ASAP! The Issues app has an indication of some of the plans.
You Earn Bitcoin Tips for Contributing!
You Earn a Bounty for Resolving Issues!
We're now registered at IssueHunt so contributors can earn the bounty on specific issues that users have deposited funds against.
Donate to Support Open Source Contributors of lessmsi
You can donate in two ways:
- Donate at Tip4Commit (Bitcoin only) to fund a general fund. Each new commit to this repository receives a percentage of the available balance.
- Donate at IssueHunt to deposit your donation as a "bounty" against a specific issue or feature request. When a contributor resolves the issue they will earn the deposit for that issue.
Deploying & Publishing New Versions
New versions are published to GitHub Releases and Chocolatey via the CI tool at AppVeyor. To publish a new version take the following steps:
- Merge changes into the master branch
- Tag the commit (in master) with the git command
git tag publish
- Push the tag to github with
git push --tags
Then the CI script in the repo at /appveyor.yml should build, test the code and if the build & tests succeed deploy it first to github and then to Chocolatey.
Was featured in the book Windows Developer Power Tools as Less MSIérables.