Webアプリケーションごとに既にMSIファイルを生成しているクライアントがあります。彼らはInstallShieldラッパーのインストールを望んでおり、ユーザーはどのWebアプリケーションを選択してInstallShieldに評価の高いMSIファイルをユーザーのマシンに置いて、各MSIファイルを実行させることができます。私は前提条件であるが、このような状況ではない第三者のMSIファイルの実行に関する投稿を見てきました。これも可能ですか?InstallShield 2012:installscript msiプロジェクトで、インストールしたばかりのMSIファイルを実行します。
答えて
リクエスト方法はありません。 MSIが別のMSIをインストールできないようにするミューテックスがあります。 InstallShield 2012の場合は、「スイート」プロジェクトを参照する必要があります。
私はカスタムアクションを実行し、MSIを起動しました。他のmsiのインストールが完了するまで待ってから、通常のインソールを実行します。
また、カスタム操作がUIシーケンスでスケジュールされていることを確認してください。 2つのMSIは実行シーケンスで同時に実行できません。
http://msdn.microsoft.com/en-us/library/aa372909%28v=vs.85%29.aspx
UIシーケンスでスケジュールされたカスタムアクションは、1)サイレントインストール中に実行されず、2)常に昇格して実行されるとは限りません。これは適切な解決策ではありません。 –
ユーザーは、サイレントインストールとして実行する必要があると言いませんでした。もしそうなら、他の解決策を確認してください。サイレントインストールでない場合は、これが解決策になります。 – anand
ユーザーが尋ねることを知らないベストプラクティスが多数ありますが、それは貧弱なソリューションを設計するための言い訳ではありません。 –
私は同じ問題に会いました。私が選んだ解決策は、文字列の次の文字列に長方形を置いて日付文字列の入力を無効にすることでした。
<Rectangle Fill="Transparent" Grid.Row="3" Grid.Column="1" Margin="0,0,15,0"/>
彼らはの.msiを構築する必要はありませんでしたし、直接にインストールされるフォルダやファイルを設定することができることを
確信クライアントはコンポーネント –
@Christopher画家を経由してハイジャックこのため申し訳ありませんが、それを行うにはどのような方法がありますスイートなしで?私は専門家しかいませんが、私のインストールを実行し、別の.msiを実行する必要があります(私のプログラムに依存するものをインストールします) – Andy
セットアップの前提条件と機能の前提条件についてdocoを見てください。それぞれの機能をMSIとして構築し、それぞれにPRQファイルを作成する必要があります。次に、MSIをFeature Prereqsとして使用するsetup.exeによって駆動される親MSIを作成します。 MSIの機能を選択すると、setup.exeは正しいMSIを実行します。 –