【解決】 InstallShieldを利用したソフトウェアのアンインストールに失敗する
古いソフトウェアを削除(アンインストール)しようとしたら
ctor.dllは InstallShieldの処理コア(エンジン)のようです。
でと、ctor.dll自体はネットから単体でダウンロードできそうですが、色々とバージョンがあるようなのでこれで正常にアンインストールできるようになるかどうかはわかりません。
(実際にやってみたんですが、ダメでした、涙)
さて、ここで諦めてはソフトウェアエンジニアとしてのプライドが許しません。
この手のトラブルは英語で調べると解決策が見つかることが多いので英語のGoogle先生にがんばってもらいました。
すると見事に目的の情報を見つけることができました。
私の場合は InstallShieldのバージョン6のようですので、IkernelUpdate.exe をダウンロードしてきて InstallShieldのエンジンをインストールしました。
すると、さきほどエラーでアンインストールできなかったソフトウェアが正常にアンインストールできました。
なお、アンインストールが成功するとまたもや InstallShieldのエンジンが消えてしまったのでソフトウェアベンダが作成したアンインストールスクリプトが無条件にエンジンを削除しているようです。
また、続けて古いソフトウェアをアンインストールしようとしたら、「クラスが登録されていません」など InstallShieldのエンジンに関連するエラーが発生したので、そのつど InstallShieldのエンジンを再インストールしながら作業を続けることになりました。
以上、トラブルにあわれたかたのご参考になれば幸いです。
「C:\Program Files\Common Files\InstallShield\Engine\6\Intel 32\ctor.dllが見つからない」と表示されて削除できなくなっていました。
ctor.dllは InstallShieldの処理コア(エンジン)のようです。
でと、ctor.dll自体はネットから単体でダウンロードできそうですが、色々とバージョンがあるようなのでこれで正常にアンインストールできるようになるかどうかはわかりません。
(実際にやってみたんですが、ダメでした、涙)
さて、ここで諦めてはソフトウェアエンジニアとしてのプライドが許しません。
この手のトラブルは英語で調べると解決策が見つかることが多いので英語のGoogle先生にがんばってもらいました。
すると見事に目的の情報を見つけることができました。
"Update to the Latest InstallShield Installation Engines"
http://consumerdocs.installshield.com/selfservice/viewContent.do?externalId=Q108322
私の場合は InstallShieldのバージョン6のようですので、IkernelUpdate.exe をダウンロードしてきて InstallShieldのエンジンをインストールしました。
すると、さきほどエラーでアンインストールできなかったソフトウェアが正常にアンインストールできました。
なお、アンインストールが成功するとまたもや InstallShieldのエンジンが消えてしまったのでソフトウェアベンダが作成したアンインストールスクリプトが無条件にエンジンを削除しているようです。
また、続けて古いソフトウェアをアンインストールしようとしたら、「クラスが登録されていません」など InstallShieldのエンジンに関連するエラーが発生したので、そのつど InstallShieldのエンジンを再インストールしながら作業を続けることになりました。
以上、トラブルにあわれたかたのご参考になれば幸いです。
この記事へのコメント
InstallShieldの再インストールでは解決しない場合もあるので、ここに書き込ませていただきます。
自分の場合も、Program Files(x86)\Common Files\InstallShield\engine\6\Intel 32\cdor.dll を右クリックし、プロパティからバージョンを調べたところ、バージョン6でした。
しかし、それを再インストールしても問題は解決しませんでした。なぜなら、エラーメッセージが異なったためです。
エラーメッセージ:
PROGRA~2\COMM~1\INSTAL~1\PROFES~1\RUNTIME\09\01\Cdor.dll を読み込み中にエラーが発生しました。指定されたモジュールが存在しません。
上記のフォルダ構造は、バージョン6のものとは異なりました。そこで、貴ブログのリンクにあった英語サイトから、フォルダ構造が同じであるバージョン9.01のソフトをインストールしたところ、問題が解決しました。
参考までに…
Program Files(x86)ということは64bitなOSをお使いのようですね。
ご連絡いただいた現象ですが、64bit版の InstallShieldの問題のようです。
すでにご自身で解決なさっているように RUNTIME\09\01\ ということから、バージョン9.01の更新を適用する必要があったのでしょう。
私もバージョンが6でしたので、engineから削除>再インストールで問題なくアンインストールが完了できてほっとしました。
検索したほかの記事では、リンク先が旧くなっていて存在しないところが多かったもので、本当に助かりました。
ありがとうございます^^
この記事がお役にたったようで嬉しいです。