Windows XP で Wise Package Studio 7.0 SP2 を使用しています。
私は MSI Wrapped EXE インストールを持っています。これは、いくつかのファイルをうまくインストールしてから、app.exe として参照できるインストールからファイルの 1 つを実行することを目的としています。
そのため、MSI エディタの [Execute Deferred] タブで、次の行を追加する必要がありました。
If Not Installed then
Execute Installed Program app.exe (Action)
End
これにより、app.exe がインストール時にのみ実行され、変更/修復/削除中には実行されなくなりました。app.exe が実行されると、それ自体がシステム トレイに便利に追加されます。
取り外し中に逆のことをするものを探しています。app.exe プロセスを停止して、システム トレイから削除したい。
現在、削除するとすべてのファイルが削除されますが、app.exe は実行されたままで、システム トレイに表示されます。私は条件文を追加することを見てきました:
If REMOVE~="ALL" then
*remove the app from the systray!*
End
条件付きステートメントにより、削除時にのみ何かを実行できますが、実際にプロセスを終了するための最良の方法がわかりません。それを可能にするために実行できるMSIコマンドはありますか? それを行う独自の.exeを作成する必要がありますか?