Windows
如何確定應用程序在 Windows 上是 64 位還是 32 位?
這無疑是一個重複的問題,但我的搜尋技巧讓我失望了。
如何確定應用程序在 Windows 上是 64 位還是 32 位?
理想情況下,我希望能夠在 64 位 Windows XP 和 64 位 Windows 7 上執行此操作。
謝謝!
編輯:感謝您的回复。當應用程序未執行時,有沒有辦法可以做到這一點?例如,在 Linux 上,我們有“readelf”——一個用於檢查二進製文件的命令行工具。Windows上有類似的工具嗎?
在 x64 平台上,在 Windows 任務管理器中,32 位應用程序的名稱後面會附加“*32”。所以:
firefox.exe *32
devenv.exe *32
svchost.exe
意味著 Firefox 和 Visual Studio 都是 32 位應用程序,而 Windows Services Host 是 64 位應用程序。
在 x86 平台上,這很簡單:64 位應用程序無法啟動。
為了回复您的上次編輯,我認為 Windows 附帶的工具不會檢測執行檔是 x64 還是 x86。也許第三方工具可以做到(反編譯器?資源提取器?)。
如果你是開發者,也可以考慮做這樣的工具或者使用 Visual Studio
corflags
。有關更多詳細資訊,請參閱StackOverflow 上的答案。