まず第一に、この質問はPythonでの64ビットOS(Windows)の検出と重複しているとは思いません。これは、
完全に回答されていないためです。
唯一の近づいてくる答えは次のとおりです。
sys.getwindowsversion()
PROGRAMFILES(X86)の使用または存在(if 'PROGRAMFILES(X86)' in os.environ
)
だが:
- Windows環境変数は
PROGRAMFILES(X86)
信頼できますか?システムに存在していなくても、誰でも作成できるのではないかと心配しています。 sys.getwindowsversion()
アーキテクチャを取得するためにどのように使用しますか?
についてsys.getwindowsversion()
:
リンクhttp://docs.python.org/library/sys.html#sys.getwindowsversion
からhttp://msdn.microsoft.com/en-us/library/ms724451%28VS.85%29にアクセスできます。 aspx
ですが、アーキテクチャ(32ビット/ 64ビット)に関連するものは何も表示されません。
さらに、返されたタプルのプラットフォーム要素はアーキテクチャから独立しているようです。
最後の注意:Python2.5とWindowsXP以降のWindowsバージョンの両方を使用したソリューションを探しています
ありがとう!
編集:
関連情報はここ
http://msdn.microsoft.com/en-us/library/ms724340%28v=VS.85%29.aspx
で入手できます
が、Pythonでこれを取得するにはどうすればよいですか?
Edit2:64ビットウィンドウで、32ビットPythonインタープリターを使用:
- os.environ["PROCESSOR_ARCHITECTURE"]は
- 'x86'
- platform.architecture()は
- (「32ビット」、「WindowsPE」)