Windows Vista 64を使用しています。
Python 2.7.3 64ビットを必要とするプロジェクトと、Python 2.7.3 32ビットを必要とする拡張機能があります(一部の拡張機能は64ビットで動作しないため)。
Python 2.7.3 MSIインストーラー(32または64ボット)が他のバージョンを削除しないようにする方法を教えてください。
Python 2.7.2で問題なく並んでくれました。
これはWindows 7 64ビットで動作しているようです。デフォルトのインストールにするバージョンを1つ選択します。 64ビット、最初にインストールします。他の作業を行う前に、他のバージョンをインストールしてください。
別のインストールディレクトリを指定し、Customize Python 2.7.3
画面でRegister Extensions
を選択し、Entire feature will be unavailable
を選択します。
通常、複数のPythonバージョンを並べてインストールできます。Windowsにインストールする場合、ファイルのインストールとは別に、レジストリも更新され、後続のパッケージ/ツールのインストールですべてのPython現在のm/cでのインストール。 問題が発生するのは、インストールが同じバージョンでビット数が異なる場合のみです。なぜなら、レジストリのパスSOFTWARE\Python\Pythoncore \はビット数とバグ修正で区別されないため、InstallPathおよびPythonPathバグ修正またはビット数が異なる同じバージョンをインストールする場合。
解決
更新
Ruediger Jungbeckが2つの異なるレジストリキーを見ることができると指摘したとき、私は突然、Vistaの後の重要な変更を思い出しました。 64ビットシステムでは、32ビットおよび64ビットアプリケーションからレジストリキーにアクセスできるようにするために、Windowsは重要なノードでレジストリを分割します。 64ビットアプリケーションの場合はネイティブレジストリパスですが、32ビットアプリケーションの場合はWoW6432Nodeです。そのため、32ビットバージョンのPython\Tools\extensionを実行すると、Wow6432Nodeのみが表示されます。 64ビットアプリケーションでは、ネイティブノードのみが表示されます。クロスビットネスノードにアクセスするAPIがありますが、これはこの質問の範囲外です。要約すると、ウィンドウは、32ビット拡張機能が透過的に32ビットPythonインストールにアクセスできるようにするノードを分割することにより、32ビットおよび64ビットアプリケーションをインテリジェントに処理します。
2番目のpythonのインストール中に、拡張機能を登録するために「機能全体を使用できません」オプションを選択します。 Python 64インストールパスはレジストリ「HKLM:SOFTWARE\Python\PythonCore\2.7\InstallPath」にあります
Python 64ビットPythonPathは「HKLM:SOFTWARE\Python\PythonCore\2.7\PythonPath」にあります
Python 32のインストールパスはレジストリ「HKLM:SOFTWARE\Wow6432Node\Python\PythonCore\2.7\InstallPath」にあります
Python 32ビットPythonPathは「HKLM:SOFTWARE\Wow6432Node\Python\PythonCore\2.7\PythonPath」にあります