2010-06-04 125 views
4

32位應用程序在64位Windows上查找「Program Files」文件夾的「正確」方式是什麼?例如,我正在運行帶有VBScript引擎的32位應用程序,並且想要啓動64位Excel(使用ShellExec或類似工具)。在32位的世界中,我會檢查環境變量「ProgramFiles」以獲取基礎文件夾。我的理解是,作爲64位Windows上的32位應用程序,該環境變量將指向32位程序文件文件夾 - 例如:C:\ Program Files(x86)。但我的64位Excel將在C:\ Program Files下。從32位Windows應用啓動64位可執行文件

我想避免硬編碼對「c:\ program files」的引用。

回答

4

您可以檢查環境變量「ProgramW6432」。在64位Windows上運行32位應用程序時,它應該存在並指向Program Files,而不使用x86。

文檔:MSDN

+0

完美!這正是我需要的。謝謝! – 2010-06-04 15:08:09

+0

如果運行64位應用程序,ProgramW6432會變爲空白嗎? – 2010-06-04 15:13:22

+0

運行64位應用程序時,它很簡單。 – Mic 2010-06-05 18:16:39

相關問題