Python msilib

From wikinotes

Documentation

wiki
personal notes on msi windows msi
python
msilib docs https://docs.python.org/3/library/msilib.html
distutils.command.bdist_msi.py https://github.com/python/cpython/blob/master/Lib/distutils/command/bdist_msi.py
microsoft
windows installer examples https://docs.microsoft.com/en-us/windows/win32/msi/windows-installer-examples
msi tables reference https://docs.microsoft.com/en-us/windows/win32/msi/database-tables
books
The Definitive Guide to Windows Installer https://www.amazon.com/Definitive-Guide-Windows-Installer-Experts/dp/1590592972

Workflow

  1. create tempdir with all installfiles
  2. create msi from tempdir
  3. validate msi using orca.exe
    1. right-click > Open in Orca
    2. Tools > Validate
    3. (close window, see quickfix(bottom) with issues)
  4. run msiexec /i installer.msi /L*v install.log to log installation
  5. check C:\ for installed files

Notes

python msilib errors
python msilib basics
python msilib gui
python msilib workflow

Tables/Format

See Windows msi for more detailed info (Common Tables, magic-numbers/prefixes, etc).