0

私はWIXを初めて使用し、最小限のGUIを使用してdllをインストールおよびアンインストールしています。この dll は、インストール時に呼び出すカスタム インストール スクリプトのサービスとして登録されます。

アンインストール時に、カスタム スクリプトでサービスを停止して登録解除します。

私の問題は、カスタム アンインストール スクリプトが呼び出される前に、dll がサービスによって使用されているため、使用中のファイル ダイアログ ボックスが表示されることです。カスタムアンインストールアクションでサービスを停止することがわかっているので、これを避けたいと思います。

この問題の簡単な解決策はありますか?

ありがとう!ニキル。

4

1 に答える 1

0

カスタム アクションを使用してサービスを停止していますか? もしそうなら、ファイルを削除する前にカスタムアクションが実行されるようにします

すなわち

<CustomAction Id="StopService" Directory="DirMyService" ExeCommand="NET STOP ServiceName" />
<CustomAction Id="StartService" Directory="DirMyService" ExeCommand="NET START ServiceName" />

<InstallExecuteSequence>
  <Custom Action="StopService" After="InstallInitialize">Installed</Custom>
  <Custom Action="StartService" Before="InstallFinalize">Installed</Custom>
</InstallExecuteSequence>

これをテストしていないので、ネット ストップなどの前に風車に固執する必要があるかもしれません。スクリプトを停止/開始するためにそれらを配置するのは間違った場所である可能性があります。しかし、あなたの問題を解決する方法のアイデアを与えるかもしれません。

于 2013-08-29T13:19:42.000 に答える