web-dev-qa-db-ja.com

WiXとMSIでサイレントインストールとサイレントアンインストールを行う方法を教えてください。

ユーザーにUIダイアログを表示せず、デフォルト設定でインストール、アップグレード、アンインストールするサイレントインストーラーをWiXで作成するにはどうすればよいですか?

30
MX4399

Windowsインストーラー (MSI)は、次のコマンドライン引数を使用してサイレントにします。

サイレントインストールまたはサイレントメジャーアップグレード:

msiexec.exe /i foo.msi /qn

サイレントマイナーアップグレード:

msiexec.exe /i foo.msi REINSTALL=ALL REINSTALLMODE=vomus /qn

サイレントアンインストール:

msiexec.exe /x foo.msi /qn

実行可能パス:

C:\Windows\system32\msiexec.exe
59

WiXで作成されたインストーラー.exeは、次のいずれかのコマンドラインパラメーターを使用して、ユーザー入力を必要とせずにコマンドラインから実行できます。

  • / quiet-UIをまったく表示しません
  • / passive-UIを表示しますが、ユーザー入力は必要ありません。基本的に、インストールの進行状況バーを表示するだけです

この回答はWiX 3.9に基づいています。

21

WiXで作成されたかどうかに関係なく、すべてのMSIインストーラーはコマンドライン引数で制御できます。したがって、UIを使用してインストーラーを作成し、それをサイレントインストールすることができます。UIをインストーラーから削除する必要はなく、コマンドラインでUIを抑制するだけです。最初のインストーラーに必ずアップグレード要素を追加して、後続のインストーラーが一致するようにしてください

4
Charles Gargent