1

msiexec.exe /i myApp.msi /q を実行すると

最終的にサイレント インストールを実行することになることはわかっていますが、インストーラーは、入力する必要があり、インストールを実行するために必要なフィールドの値をどこから取得しますか。たとえば、ユーザー名、パスワードなど、通常のインストール中にユーザーから取得するフィールドやパラメーターがいくつかある場合があります。

サイレント インストールでは、インストーラはこれらを入力ファイルから取得します。この入力ファイルはどこに保存されますか? またはどのようにこれらの値を取得しますか?

サイレント インストールを実行しようとしていますが、特定の属性に対して間違った値を取得しているため、問題に直面しています...どのように取得するのかわかりません。

任意のポインタをいただければ幸いです。

4

2 に答える 2

2

参照するパラメーターは、Windows インストーラーでは「プロパティ」と呼ばれます。したがって、サイレントに実行すると、プロパティはデフォルト値になります。Property使用される要素に値を指定した場合。SetPropertyまたは他の要素がある場合CustomAction、それらはプロパティの値を変更できます。次のように、コマンドラインでプロパティをインストールに提供することもできます。

msiexec /i path\to\your.msi /q PROPERTY1=value PROPERTY2="my other value" PROPERTY3=2

Windows インストーラーは、インストール中に変更されたプロパティ値を保存しないことに注意することも重要です。そのためには、 Remember Property Patternを確認してください。

于 2013-03-29T14:39:24.330 に答える
0

MSI は、値を取得するために入力ファイルをネイティブに使用しません。それがあなたの話なら、それを実現するためにカスタム アクションを実装する必要がありました。

通常、コマンドラインで渡されるセキュア カスタム プロパティ (パブリック プロパティがすべて大文字である SecureCustomProperties プロパティにリストされているパブリック プロパティ) を使用します。

msiexec /i foo.msi /qn USERNAME=Bob PASSWORD=1Password

通常、入力の検証を処理するために、カスタム ダイアログ、コントロール、およびカスタム アクションを UI および実行シーケンスに配置します。

于 2013-03-29T14:40:09.353 に答える