misc.log

日常茶飯事とお仕事と

msiファイルからファイルを抽出

客先の検証環境に持ち込んだ、バージョン違い(内部が微妙に違う)のインストーラの、中身を抽出して比較する必要が出てきた。ちょいと探したところ、Windows Installerについているコマンドでできるみたい。

msiexec /a TargetInstaller.msi targetdir="C:\Temp\out" /qn  

上記の例だと、

  • TargetInstaller.msiというインストーラから、ファイルを抜き出して C:\Temp\Out フォルダに配置する。

ということができる。あとは、フォルダやファイルの比較ツールで比較すれば、差異を洗い出すことができるね。ただし、どうも、出力フォルダを今自分が居るフォルダと同じにするとダメなような……。呼び出してもしばらく応答が無い場合は、出力先を変えてみてください。