2017-07-10 12 views
4

64ビットバージョンのアプリケーションをインストールするためにInnosetupにアプリケーションの32ビットバージョン(通常はProgram Files (x86))をアンインストールする可能性はありますか(通常Program Files )。 32ビットバージョンがアンインストールされていない場合、起動時にボットが起動して問題が発生します。32ビットアプリケーションをアンインストールして64ビットアプリケーションをインストールする

手順があるかどうかわかりません。 64ビットアプリケーションが基本的に別のアプリケーションになるという事実を考えると、32ビットアプリケーションをアンインストールしようとすると、関連していないアプリケーションをアンインストールしようとしているようです。

32ビットライブラリをサポートするベンダーがますます少なくなるという動機があります。たとえば、msvc2017のQtには32ビットライブラリはありません。だから私は64ビットに早く移動する方が良い。

注:Innosetupではこれが不可能な場合は、他の選択肢もあります。

答えて

0

他のバージョンと同様に、以前の32ビットバージョンをアンインストールするだけです。

は、それは限り、32ビットおよび64ビット版のインストーラの両方が同じAppIdを持っているように、ほとんどすぐにを動作するはずHow to detect old installation and offer removal?

を参照してください。唯一の違いは、HKLM/HKEY_LOCAL_MACHINE(デフォルトでは64ビットハイブ64-bit install mode)の代わりに、(32ビットのハイブ)でアンインストールキーを明示的に探す必要があることです。

すでにInitializeSetupから32ビットバージョンをアンインストールした場合、上記の質問に対する回答が示されているように、Inno Setupは32ビットバージョンが存在していて、デフォルトのインストールパス64ビットProgram Filesフォルダにコピーします。

+0

これは機能していないようです。あなたが説明した答えのコードを使用しましたが、32ビットのインストールは検出されません。 64ビットインストールでは古い64ビットインストールしか検出されないようです。 –

+0

私の編集した答えを見てください。 –

関連する問題