SQLServerのexecmastercmdshellステートメントからexeを動作させるのに問題があります。
EXEをダブルクリックすると、正常に動作します。しかし、SQLサーバーでこのコマンドを使用して実行しようとすると、実行されません。
EXEC master..xp_cmdshell 'Path\Program.exe'
プログラム自体は非常に単純です。社内のDLLを使用して電子メールアラートを送信することになっています。エラーが発生した場合は、そのエラーを現在のディレクトリ内のファイルに書き込む必要があります。(最終的には、レコードが特定のテーブルに挿入されたときにトリガーを介して実行されるように設定する必要があります)。
上記のステートメントを使用してプログラムを実行すると、プログラムはエラーメッセージを出力したり(以下に示すように)、電子メールを送信したりしません。実行されているかどうかはどうすればわかりますか?エラーが発生しましたか?何が起こっているのでしょうか?path \ program.exeをダブルクリックして実行すると、プログラム自体は正常に動作しています。
Imports System.IO
Module Module1
Sub Main()
Try
EmailSenderDLL.EmailSender.send(15, "Alert Text.")
Catch e As Exception
File.WriteAllText(Directory.GetCurrentDirectory() & "\" & Now.Year & Now.Month & Now.Day & Now.Millisecond, e.Message & vbNewLine & e.StackTrace)
End Try
End Sub
End Module
これを修正するにはどのような手順を実行できますか?