Sql server SQL xp#u cmdshell保持运行并赢得';不要取消
我试图运行一个xp_cmdshell来执行一个程序,我想通过打开记事本来测试它。然而,当我执行命令时,它只是继续执行,没有返回结果或打开记事本。然后,当我试图取消执行时,cancel只会继续运行,不会取消执行 我知道如何停止取消,但首先我如何避免这种情况?我在执行中做错了什么Sql server SQL xp#u cmdshell保持运行并赢得';不要取消,sql-server,xp-cmdshell,Sql Server,Xp Cmdshell,我试图运行一个xp_cmdshell来执行一个程序,我想通过打开记事本来测试它。然而,当我执行命令时,它只是继续执行,没有返回结果或打开记事本。然后,当我试图取消执行时,cancel只会继续运行,不会取消执行 我知道如何停止取消,但首先我如何避免这种情况?我在执行中做错了什么 DECLARE @command varchar(8000) SET @command = 'C:\Windows\System32\notepad.exe' EXEC master..xp_cmdshell @comm
DECLARE @command varchar(8000)
SET @command = 'C:\Windows\System32\notepad.exe'
EXEC master..xp_cmdshell @command
xp\u cmdshell
仅当它正在执行的任何操作完成时才继续。在你的情况下,要么你辞职,要么杀了松鼠。我知道如何终止这个过程。我在试图理解为什么会发生这种情况。xm_cmdshell被称为启动进程。我正在试图找出如何正确执行此操作。无论您使用xp\u cmdshell执行什么操作
请确保它结束并退出,然后使用运行SQL Server的Windows帐户打开notepad.exe,这样您就看不到notepad在运行,除非您碰巧也使用相同的Windows帐户登录到该服务器的控制台。它永远不会返回,因为notepad.exe无法终止。如果运行xp\u cmdshell'cmd.exe/k echo“Hello”
,则会出现同样的问题,因为cmd.exe将永远不会由于/k
开关退出。