回答:
読み込まれた質問について話します...
まず、setup.exeは無視してください。おそらくMSIを呼び出すだけです。または、それらがMSIと呼ばれる一連のものを抽出することもあります。通常、セットアップを実行するときに一時ディレクトリを監視して、その動作を把握できます。
私は常に不正行為を行い、msiexec /i path/to-install.msi /l*v /qn
ログを上げてインストール()の予行演習を行い、次にログを調べて、設定したいプロパティを選択し、コマンドラインから設定しました。応答ファイルが機能しなかった、または応答ファイルを作成するプロセスを実行するという面倒な価値はありませんでした。
次に、InstEditを見つけて、それをボートロードで使用しました。MSIのプロパティを編集して変換を生成し、スクリプトの引数として渡すことができます。msiexec /i path/to/installer.msi /t path/to/transform.mst
最初に試してみることをお勧めします。ほとんどすべてを行う無料バージョンがあります。
また、ここにあるすべてのスイッチについて確認することもできmsiexec
ます。
Property(S) : PROPERTY_NAME...
Msiexecは必要なツールです。「静かな」ものをインストールするための-qパラメータがあります:
/ qn:ユーザーインターフェイスを表示しません。
/ qb:基本的なユーザーインターフェイスを表示します。
/ qr:インストールの最後にモーダルダイアログボックスが表示される縮小されたユーザーインターフェイスを表示します。
/ qf:完全なユーザーインターフェイスを表示し、最後にモーダルダイアログボックスを表示します。
/ qn +:最後に表示されるモーダルダイアログボックスを除いて、ユーザーインターフェイスを表示しません。
/ qb +:モーダルダイアログボックスが最後に表示される基本的なユーザーインターフェイスを表示します。
/ qb-:モーダルダイアログボックスのない基本的なユーザーインターフェイスを表示します。
コマンドラインの最後に名前付きオプション(または「プロパティ」)を指定することもできます。サポートされているプロパティは、パッケージによって異なります。たとえば、次のコマンド:
msiexec /qb /l* perl-log.txt /i ActivePerl.msi PERL_PATH=Yes PERL_EXT=Yes
... ActiveState Perlをインストールする方法です。PATHにPerl.exeを追加し、.plファイルをそれに関連付けるようにMSIパッケージに指示します。(ソース)
ほとんどのアプリケーションはサイレントインストールできるため、スクリプトでインストールできます。各Setup.exeには多数の潜在的なスイッチが含まれる可能性があるため、ベンダーに連絡するか、Webサイトを検索する必要があります。/?、/ h / helpスイッチを使用してセットアップを開始すると、情報を取得できる場合があります。MSIファイルには任意の数のスイッチを含めることもできますが、この記事のMSIコマンドラインパラメーターにリストがあります。
プロセスをスクリプト化すると、setup.exeでインストールされ、MSIのような別のファイルを起動するアプリが実行される場合があります。MS Office XPがその一例です。これが発生すると、起動したファイルが完了したとスクリプトが判断し、次のセットアップを開始すると失敗し、すべてが南向きになります。これを回避するには、セットアップファイルをバイパスして、コマンドラインオプションを指定して実際のインストーラー(MSIの可能性があります)に直接進みます。それが不可能な場合は、何らかのタイマーの一時停止を作成する必要があります。私はインターネットで見つけたwait.exeと呼ばれる小さなユーティリティを使用していましたが、これを行う方法は無数にあります。ただし、スクリプトのポイントは、アプリケーションが正しくインストールされたことを識別して、次のインストールを開始できるようにすることです。