问题是,就我而言,从 32 位应用程序运行的批处理文件的 %ProgramFiles% 扩展为“C:\Program Files (x86)”。
答案1
您可以从环境变量中获取它%ProgramW6432%
。此变量存在于 64 位 Windows 版本中,并始终指向 的 64 位实例Program Files
。
答案2
在由 32 位可执行文件生成的批处理文件中,我发现所有 ProgramFiles 相关环境变量都包含“Program Files (x86)”位置。作为一个临时解决方案,您可以假设 64 位文件夹位于同一驱动器上,但末尾缺少“ (x86)”子字符串。删除子字符串后的值可以按如下方式批量计算:
set Programs=%ProgramFiles(x86)%
set Programs64=%Programs:~0,-6%
答案3
它使用环境变量来识别 x86 和 64 位 Program Files 文件夹