2014-04-23 65 views
0

在我們的舞臺環境,我們希望EXE自動運行基於錯誤觸發命令提示符窗口。下面是我使用如何關閉使用xp_cmdshell

declare @minid int  
declare @maxid int  
select @minid=min(sno) from activityid  
select @maxid =max(sno) from activityid  
declare @cmd varchar(8000)  
declare @cmd2 varchar(8000)  
set @cmd='E:\Debug\Debug\Acces.exe /ly /activityId '  
declare @ad int  
declare @cmd1 varchar(8000)  
while @minid<[email protected]  
begin  
select @ad=ad from activityid where [email protected] activity  
set @[email protected]+cast(@ad as varchar(8000))  
exec master.dbo.xp_cmdshell @cmd2  
set @[email protected]+1  
end  

所以在每次循環的代碼,一個新的EXE是被觸發。

如何在執行後關閉exe,而不管成功或失敗。

請注意,我必須從sql做的只發送電子郵件,這是階段,所以我們不需要擔心xp_cmdshell的缺點。

+0

什麼是「Acces.exe」,它的其他命令行開關是什麼? –

+0

access.exe所需的全部參數都在access.exe/ly/activityid 540 – TheGameiswar

+0

你好。是的,我從你的問題中看到了這兩個命令行選項。我在問什麼是「Acces.exe」可用的所有選項。可能有一個「退出」。 –

回答

1

要回答你的問題,你真的不能關閉exe ...這是由EXE做的,除非你殺了它或什麼。如果您要從命令行程序運行這樣的可執行文件,您必須確保它以您需要的方式運行。你基本上是可執行的,直到它完成並退出。