用VBscript捕获控制台应用程序的返回代码
本文关键字:返回 代码 应用程序 控制台 VBscript | 更新日期: 2023-09-27 18:04:15
我正在尝试使用环境返回成功/错误代码。控制台应用程序中的退出功能。(0表示成功,1表示错误)。现在我想在vbscript中捕获这个返回代码并显示返回代码(例如WScript.Echo(returnCode))。
有人知道这是否可以做到吗?
谢谢
从脚本启动其他程序
exitcode = WshShell.Run(strCommand, , true])
如果bWaitOnReturn被设置为True, Run方法创建一个新进程,执行命令,并等待进程终止。在这个情况下,Run方法返回从终止过程。如果bWaitOnReturn缺失或设置为False,Run返回错误码0。
Set WshShell = WScript.CreateObject("WScript.Shell")
errcode = WshShell.Run("your program.exe",,true)
假设您正在运行的脚本名为"Canada。我们假设脚本将返回代码"Mexico.vbs"。
加拿大。VBS代码(这是你要运行的代码):
Dim ExitCode
Dim Return
Dim WshShell
Set WshShell=CreateObject ("WScript.Shell")
Dim Command
Command="Mexico.vbs"
Command=Chr(34) & Command & Chr (34)
ExitCode=WshShell.Run (Command, 1, True)
If ExitCode="1" Then
Return="Success"
ElseIf ExitCode="2" Then
Return="Failure"
Else
Return="Unknown"
End If
MsgBox Return
墨西哥。VBS代码(这是加拿大将运行的代码):
Dim Success
Success=MsgBox ("Do you want to Succeed?",vbQuestion + vbYesNo,"Your Goals are good?")
success=success-7 'Vbyes=6 vbno=7. True=-1 False=0.
'The Above Code is only for demonstration purposes. You may set success in your own statement
If Success Then 'Successful
Success=1
ElseIf not Success Then 'Failure
Success=2
Else 'Unknown
Success=0
End If
WScript.Quit (Success)
现在在加拿大,您需要声明一个变量来保存墨西哥的出口代码。我们给它命名
Dim ExitCode
我们还需要一个字符串变量(虽然您可以将ExitCode变量加倍,但这样做可能会使大型文件的调试变得困难)。所以让我们把它们分开。)
Dim Return
,我们需要一个对象来运行Mexico.vbs。我们需要的对象是Wscript Shell
Dim WshShell
Set Wshshell=CreateObject ("WScript.Shell")
现在我们需要指定要运行的脚本。脚本路径为"Mexico.vbs"
Dim Command
Command="Mexico.vbs"
现在只是为了防止在文件路径中有任何空格(没有,但为了安全起见),我们需要将路径括在引号中。(字符码:34)
Command=Chr(34) & Command & Chr (34)
现在我们需要运行墨西哥。vbs来自加拿大。VBS并保存返回变量
ExitCode=WshShell.Run (Command, 1, True) 'command is path, 1 is window state, true is wait for return.
现在我们将ExitCode格式化为UserFriendly字符串。
If ExitCode="1" Then
Return="Success"
ElseIf ExitCode="2" Then
Return="Failure"
Else
Return="Unknown"
End If
现在我们将在提示框中显示结果。
MsgBox Return
在墨西哥
。您将通过VBS发送成功或失败的退出码。我们将exitcode变量命名为Success
Dim Success
这部分是为了演示。您可以排除此部分,并将其替换为审计报表。如果成功,只需将Success设置为true,如果失败,则设置为False。
Success=MsgBox ("Do you want to Succeed?",vbQuestion + vbYesNo,"Your Goals are good?")
success=success-7 'Vbyes=6 vbno=7. True=-1 False=0.
'The Above Code is only for demonstration purposes. You may set success in your own statement
现在我们将bool值转换为整数,1=成功,2=失败,0=未知
If Success Then 'Successful
Success=1
ElseIf not Success Then 'Failure
Success=2
Else 'Unknown
Success=0
End If
现在我们将终止墨西哥。vbs脚本,退出码设置为Success.
WScript.Quit (Success)