2011-09-28 89 views
1

可能重複:
Detect whether current Windows version is 32 bit or 64 bit
Correct way to check if Windows is 64 bit or not, on runtime? (C++)如何在運行C++/Qt應用程序檢測是否底層視窗是32或64位版本?

我發現關於這個專題的一些問題,但不是我所需要的東西。

我正在開發一個C++/Qt應用程序是完全除了一些預編譯的.exe的應用必須跨平臺運行。 (只有Windows與問題相關)。我有這些可執行文件的32位和64位Windows版本。 我知道一個選擇是打包整個應用程序的兩個版本,但代碼中的更改會非常少,以至於我想要考慮其他選擇。

那麼,有沒有一種方法可以在運行時使用C++/Qt功能檢測基礎Windows是32位還是64位版本?

謝謝!

+0

@DavidRodríguez-dribeas是啊,這是一個更好的 – stijn

回答

1

沒有,但你可以調用WINAPI函數來告訴你這一點。

呼叫GetNativeSystemInfo()。如果你正在運行的x64,SYSTEM_INFO::wProcessorArchitecturePROCESSOR_ARCHITECTURE_AMD64。如果32位的x86這將是PROCESSOR_ARCHITECTURE_INTEL

+0

不,那太效仿。 GetNativeSystemInfo()是必需的。 –

+0

@Hans:沒錯。修正了,謝謝! –

相關問題