2013-07-01 20 views
12

2つのカスタムアクションがあります。そのうちの1つは、製品のインストール時に実行するアクションと、アンインストール時に実行するカスタムアクションです。WiXでカスタムアクションを実行するにはどうすればインストールやアンインストールでのみ実行できますか?

私のカスタムアクションは現在、 "InstallFinalize"の後にマージモジュールから呼び出されますが、これはインストールとアンインストールの両方で発生します。

Error 2762. Cannot write script record. Transaction not started.

私も(例えば、UnpublishComponents)他のアクションにアタッチしようとしましたが、私はできません:私は、「インストールしないでUPGRADINGPRODUCTCODE NOT」の状態を、それは私にエラーを与えたを追加しようとしましたインストールまたはアンインストールに固有のものを見つけます。

この問題を解決するにはどうすればよいですか?

+0

[MSI経由でアンインストールする場合にのみ発生するWiXカスタムアクションを追加する方法は?](http://stackoverflow.com/questions/320921/how-to-add-a-wix-custom-アクションのみ - アンインストール - オン - ワン - msi経由) –

答えて

11

のみインストールの
1.次試してみてください:アンインストール用

<InstallExecuteSequence> 
<Custom Action="SomeAction" After="InstallFinalize">NOT Installed AND NOT REMOVE</Custom> 
</InstallExecuteSequence> 

2.を使用しよう:Rob's answer

UPGRADINGPRODUCTCODEプロパティは、RemoveExistingProducts CAの中に設定されています

+0

ありがとう、これはそれを行う方法です。 –

関連する問題