Edited at

俺は32ビットなのか、64ビットなのか。

More than 1 year has passed since last update.


.NET Framework4.0未満


  • IntPtr.Size = 8 の場合は 64 ビットモードでプロセスが動作している。

  • IntPtr.Size = 4 の場合は 32 ビットモードでプロセスが動作している。

IntPtrはIntのポインタサイズなのでバイトからビットへ変換すればいいと思うよ。


sampleFX2.vb

if IntPtr.Size = 8 then

'ロクヨン
else
'ハチロク
end if


.NET Framework4.0以上

Environment.Is64BitProcess を参照する

https://msdn.microsoft.com/ja-jp/library/system.environment.is64bitprocess(v=vs.110).aspx


sampleFX4.vb

if Environment.Is64BitProcess then

'ロクヨン
else
'ハチロク
end if