そういえば Opera のインストール先を得る必要があったんだ。
結局 x86 か x64 かをコードで見分ける必要があるのだってことだね。
チャチャっと探してみると WMI を使えば簡単だと解った。
C# WMI
WMIを使ってOSの情報を取得する: .NET Tips: C#, VB.NET, Visual Studio
ここらを見ると .NET 経由でも WMI から様々な情報が得られるようで。
私はとりあえず x64 かどうかさえ見分けられればいいので下記のように。
#-*- coding:utf-8 -*- """ cpu_check.py Check Windows Architecture """ import clr clr.AddReference("System.Management") from System import * from System.Management import * # Create ManagementClass mc = ManagementClass("Win32_Processor") # Get ManagementObjectCollection moc = mc.GetInstances() # mo is ManagementObject for mo in moc: bit = mo["AddressWidth"] if bit == 32: print "x86 Windows" elif bit == 64: print "x64 Windows" else: print "Unknown Windows"
何故か IronPython コード、だってコンパイルするのが面倒くさい。
Win32_Processor 指定で x64 も判別できるようだ。
以下私の環境でテスト。
My 32bit Windows Vista
My 64bit Windows 7
これで見分けは簡単に行えそうだ。
でももっと簡単な方法がありそうな…