我尝试获取ProgramFiles环境变量的路径,该路径应该在C:\Program Files (x86)机器上扩展为x64并在C:\Program Files机器上扩展为x86

问题是,如果执行此操作,则在nmake文件中:

 all:
      echo $(PROGRAMFILES)


每次都会扩展为C:\Program Files,这是错误的。

来自x64机器的环境详细信息:

ProgramFiles(x86)=C:\Program Files (x86)
ProgramW6432=C:\Program Files

:: this one is special, if will return different results based on current process x86/x64
ProgramFiles=C:\Program Files (x86) or C:\Program Files
PROCESSOR_ARCHITECTURE=x86 or x64


现在更新的问题是如何在nmake中获取x86程序文件的位置,以使其在x86和x64机器上都能工作?

最佳答案

此表达式似乎可以在64位Windows 7上运行,而nmake可以在32位和64位上运行:

%%PROGRAMFILES(x86)%%


例如

LC = %%PROGRAMFILES(x86)%%\Microsoft SDKs\Windows\v7.0A\bin\lc.exe

关于environment-variables - 如何从x64机器上的nmake访问ProgramFiles环境变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3329141/

10-13 09:31