如何知道我是否可以使用Windows命令" mklink"?

时间:2015-10-16 14:40:47

标签: vbscript

我正在编写必须在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"在这两种情况下。

一个想法?

1 个答案:

答案 0 :(得分:2)

您正在检索cmd实例的退出代码,而不是已执行命令的退出代码。要获取命令的退出代码,您可以尝试使用

rc = oShell.Run("cmd /v /c mklink & exit !errorlevel!", 0, True)