Я хотел бы запустить .exe из задания агента SQL Server. .exe размещен в другом месте, чем мой агент SQL Server. Я определил свою работу как тип PowerShell в свойствах шага MSSMS и определил следующую команду:
Invoke-Command -ComputerName "myserver" -ScriptBlock {
try
{
C:\...\......\myexe.exe 2>&1 -ErrorAction Stop
}
catch
{
Exit 1
}
}
где myexe.exe — исполняемый файл, размещенный на диске удаленного сервера. Когда я это делаю, я получаю следующую ошибку:
Message
Unhandled exception. System.Exception: A Forced Exception for testing purpose
At line:3 char:13
+ $res= & C:\........... ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (Unhandled excep...testing purpose:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
.....
Это ошибка, которая была выброшена в моем .exe, но на самом деле я ожидаю, что задание будет ошибочным, пока оно будет успешным.
Итак, вопрос в том, как я могу обработать исключение, созданное в моем файле myexe.exe, и поймать его в моем задании агента SQL? Я ожидаю, что задание агента sql будет ошибочным, и в выходных данных будет записано сообщение об исключении.
Большое спасибо за вашу помощь