VBS - 获取程序文件文件夹路径?

时间:2014-11-06 21:40:36

标签: vbscript

我正在尝试在vbs中获取程序文件文件夹。没有运气就试过了;

SET wsc = CreateObject("WScript.Shell")
SET fso = WScript.CreateObject("Scripting.FileSystemObject")
targetpath = wsc.SpecialFolders("ProgramFiles") & "\Google\Chrome\Application\chrome.exe"

它只是得到C:\ dir。这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:3)

这篇TechNet文章显示了SpecialFolders列表。程序文件不在其中。这是Windows脚本宿主的限制。与以下显示空白弹出窗口的方式相同

SET wsc = CreateObject("WScript.Shell")
msgbox wsc.SpecialFolders("Awesome") 

所以你至少有两个选择。

Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(&H26&)
Set objFolderItem = objFolder.Self
msgbox objFolderItem.Path
  • &安培; H26&安培; - 程序文件
  • &安培; H2A&安培; - 程序文件(x86)

我提供的另一个选项是使用像JosefZ建议的环境变量。

targetpath = wsc.ExpandEnvironmentStrings("%ProgramFiles%") & "..."
targetpath = wsc.ExpandEnvironmentStrings("%ProgramFiles(x86)%") & "..."