Project to analyze a msi files without msi.dll
The purpose of the project is allow to extraction of information about actions in msi file, withou use msi.dll. It allows use it on different platforms, not only on windows.
WINDOWS: open MsiAnalyzer.sln and build. LINUX: invoke "make" command in directory with "Makefile"
IMPORTANT: cpp17 standard is used (std::filesystem)
-
input: MsiAnalyzer.exe <inpu_msi_file> or MsiAnalyzer.exe <msi_file> <output_dir>
-
output: <output_dir> with:
- "tables" dir
- "analyzeReport.txt" file, which contains summary of analyze
- "script" dir (if any script is present)
- "files" dir (if any embedded file is present)
- "actions.txt" (if any customAction is present)
https://drive.google.com/drive/folders/1B--x_qQctYGTiS4wX0X0kJFCF62LvIWs?usp=sharing
- Max size of msi to anazlyze is MAX_DWORD_VALUE, because I used DWORD's to store file offsets. It can be good idea to change it to QWORD's
- Add releases tab in github
- There is possibility to overrite files. If someone add "ScriptPreamble.ps1" script to msi, then there is possiblity that overwriting.
- Anlyze more tools to msi producing.
- Add cmake