我可以从命令行运行 my.exe。我可以从 .bat 运行它。但是,当我尝试在 SQL Server 中运行它们时,.exe 似乎永远不会运行。
exec master..xp_cmdshell '\\fs01\filefolder\runpgm.bat'
这会运行 .bat,但它运行的 .exe 永远不会运行。
echo %date% %TIME% >> \\fs01\filefolder\test.txt
\\fs01\filefolder\CallClickSoftWS.exe >> \\fs01\filefolder\test.txt
echo %date% %TIME% >> \\fs01\filefolder\test.txt
echo "Done" >> \\fs01\filefolder\test.txt
exit
如果我从命令行运行“\fs01\filefolder\runpgm.bat”,那么它工作正常。
最佳答案
我只是将其添加为代码格式的答案,但请尝试将您的 exec
包装在 try catch 中,以便查看问题所在...
BEGIN TRY
exec master..xp_cmdshell '\\fs01\filefolder\runpgm.bat'
END TRY
BEGIN CATCH
SELECT @ERROR_MESSAGE()
END CATCH
关于sql-server - 为什么我可以从 SQL Server 运行 .bat 而不是 .exe?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26717752/