---
name: "msidiff"
section: "1"
platform: "linux"
package: "msitools"
version: "0.106+repack-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/msidiff"
---

# msidiff(1)

compare Windows Installer packages

## NAME

msidiff - compare Windows Installer packages

## SYNOPSIS

**msidiff** \[\<*option*\> \[\<*option*\> ...\]\] \[\<*diff-options*\>\] \<*source MSI*\> \<*target MSI*\>

## DESCRIPTION

**msidiff** compares Windows Installer packages (.MSI files).

## OPTIONS

- **-t**, **--tables**

  Compare MSI tables as text. This is the default.

- **-l**, **--list**

  Compare the file lists in the packages.

- **-L**, **--long-list**

  Compare the detailed file lists in the packages.

- **-h**, **--help**

  Print a help message and exit.

- **-v**, **--version**

  Print version information and exit.

More than one of **-t**, **-l** or **-L** may be specified.

\<*diff-options*\> are passed to **[diff(1)](/diff/1.md)**. The first repeated argument of the above or the first argument starting with a \`-' but not a valid **msidiff** option starts \<*diff-options*\>, the first argument not starting with \`-' ends them. By default, \<*diff-options*\> is **-Nup** for contents, **-U0** for others, and **-r** which is always passed.

## AUTHORS

**msidiff** was written by Ville Skyttä for Red Hat, Inc. This manual page was adapted from the program usage information by Stephen Kitt \<skitt@debian.org\>, for the Debian GNU/Linux system (but may be used by others). It was last modified for **msidiff** version 0.93.
