我正在编写必须在Windows服务器或工作站上运行的安装vbscript。某些服务器无法运行此内部命令(Windows Server 2003)。在我的脚本中,我想知道系统是否能够运行" mklink"或不(创建符号链接)。 我尝试获取" run命令的返回码"但它没有帮助:
Set oShell = CreateObject ("WSCript.shell")
rc = oShell.Run("cmd /C mklink", 0, True)
rc = oShell.Run("cmd /C mklinks", 0, True)
1)" mklink"存在,它显示其帮助信息:rc = 1
2)" mklinks"不存在:rc = 1
如果我在控制台中尝试手动执行这些命令并显示%ERRORLEVEL%,则
1)我得到" 1"
2)我得到" 9009" ! Yesss,但我得到" 1"获取Run方法的返回码。
我也尝试过" Exec" shell对象的方法,但我得到" 0"在这两种情况下。
一个想法?
答案 0 :(得分:2)
您正在检索cmd
实例的退出代码,而不是已执行命令的退出代码。要获取命令的退出代码,您可以尝试使用
rc = oShell.Run("cmd /v /c mklink & exit !errorlevel!", 0, True)