我可以从SSMS运行这个SQL命令,并运行.bat文件:
EXECUTE xp_cmdshell 'C:\ReportPrinting\KarlTest\test.bat @TrxOid'
我将它放入存储过程中,在经过许多权限问题后,存储过程执行得很好。因此,我知道xp_cmndshell现在实际上正在执行。
但是,批处理文件实际上并未运行。因此,似乎SQL Server正确地将命令发送到Windows,但Windows不运行它。
我需要考虑什么?
答案 0 :(得分:0)
这就是问题所在。以下是解决问题的原因:
select @message = 'C:\LabelPrinting\ReportPrinting\Parts\PostSubmitAdjustment.bat '+ cast(@TrxOid as nvarchar(100))
EXECUTE xp_cmdshell @message