0
我正在VBScript中运行这样的PowerShell命令。如何从VBScript中的PowerShell获取错误消息
下面是我运行
'This Script is used for creating Mailboxes for Active Directory Users.
'This script triggers a Power Shell Script which creates the mailbox for the
'ActiveDirectory User.
'
Set args = WScript.Arguments
'Argument 0 contains the identity User Name
WScript.Echo args.Item(0)
'Argument 1 contains the Mail Store Alias Name
WScript.Echo args.Item(1)
'Argument 2 contains the Mail Database
WScript.Echo args.Item(2)
'Argument 3 contains the Report Log Path
WScript.Echo args.Item(3)
On Error Resume Next
Dim shell
Set shell = CreateObject("WScript.Shell")
'Firing the PowerShell command from VBScript
shell.Run "PowerShell.exe -PSConsoleFile ""E:\Program Files\Microsoft\Exchange Server\Bin\exshell.psc1"" -NoExit ""&{""Enable-Mailbox -Identity '"&Replace(args.Item(0),"'", "''")&"' -Alias '"&args.Item(1)&"' -Database '"&args.Item(2)&"';""exit 0""} ",,20
If Err.Number <> 0 Then
WScript.Echo("Error Occurred in CreateMailBoxExchange script" & Err.Description)
WScript.Quit(2)
End If
WScript.Quit(3)
所以当Enable-Mailbox
命令失败,它不回来与错误消息的VBScript。我应该如何捕获该消息并将其发回给用户?
try/catch启用邮箱。当它不工作时返回一个非零的退出代码。记录错误代码的含义或只记录它们。检查%LASTEXITCODE%。或者只是将所有东西都移到PowerShell中,然后摆脱包装:) –