通过 SCCM 的 tnsnames vbscript - 环境变量失败

tnsnames vbscript via SCCM - environment variables failing

我正在尝试使用通过 SCCM 部署的 vbscript 更新 tnsnames.ora 文件。在我的打包机器上,文件 运行s 没有错误,但是当脚本通过 SCCM 安装在测试机器上 运行 时,脚本无法找到使用 [= 的文件的位置18=] 变量。我已验证在两台测试安装机器上都存在。

Code failing:

Origfile = WshShell.ExpandEnvironmentStrings("%TNS_ADMIN%") & "\tnsnames.ora"

' TNSNames.ora exists ?
If Not FSO.FileExists(Origfile) Then
    LogFile.WriteLine(now & " - TNSNames.ora not found")
    LogFile.WriteLine(now & " Original File: " & OrigFile & " - TNSNames.ora not found")
    LogFile.Close
    wscript.quit
Else
    LogFile.WriteLine(now & " - " & OrigFile & " found")
End If

回显结果:

3/9/2015 4:06:57 PM - TNSNames.ora not found 3/9/2015 4:06:57 PMOriginal File: %TNS_ADMIN%\tnsnames.ora - TNSNames.ora not found

Does anyone know how I can get it to see the environment variables?

通过使用 Smart Packager 2.0 打包一个空的 MSI 然后将自定义功能添加到 运行 Vbscript 并部署 msi 而不是非 msi 路由来解决这个问题。问题似乎是 vbscripts 环境范围是处理机器的范围,而不是目标机器,因为它不是 MSI 文件,所以没有下载到客户端