在 64 位 PC 上,VBS 文件中的以下代码将按预期返回“C:\Program Files”。
Dim oShell
Set oShell = CreateObject("WScript.Shell")
MsgBox oShell.ExpandEnvironmentStrings("%ProgramFiles%")
但是,当将相同的代码放在 HTA 文件中时,它会返回“C:\Program Files (x86)”。以下是 HTA 文件。
<html>
<head>
<title>HTA Test </title>
<HTA:APPLICATION
ApplicationName = "Test App"
ID = "test"
WindowState = "normal "
SysMenu = "yes "
Scroll = "no"
Version = "1.0" />
</head>
<script language="VBScript">
Dim oShell
Set oShell = CreateObject("WScript.Shell")
MsgBox oShell.ExpandEnvironmentStrings("%ProgramFiles%")
</script>
<body>
</body>
</html>
在 PC 上,存在以下 2 个系统变量。
ProgramFiles=C:\Program Files
ProgramFiles(x86)=C:\Program Files (x86)
谁能解释为什么会这样?
谢谢。