|
分類:[.NET 全般]
#VB2005,Windowsインストーラプロジェクト
カスタム動作を単独DLL(Custom.dll)として作成しました。 ファイルシステムエディタで、「アプリケーション フォルダ」\Temp へプライマリ出力を配置しました。 カスタム動作エディタでそのプライマリ出力を追加しました。
インストール時には、オーバーライドしたCommit()が正しく動作します。
が、アンインストール時には、カスタム動作が実行される前にエラーが発生します。
「致命的なエラー」 IO.FileNotFoundException file:///c:\windows\system32\Files\〜\Temp\Custom.dll
インストール先が、c:\Program Files\product の場合、c:\windows\system32\Files\product\Temp\Custom.dllとなるようです。 検索で引っかかったページでは、空白処理のバグでディレクトリ変更が正しくおこなわれていないのでは?と書かれていましたが それ以上の解決策は見つかりませんでした。
ちなみに、空白を含まないパスへインストールしたところ installutil.exeを引数無しで呼び出したときのSyntax説明ウィンドウが表示され、アンインストールはロールバックされました。 #これも致命的エラー
感覚としては解決策が無いように感じますが。。。
情報をお待ちしております。
|