Her er en stored procedure som tager et filnavn, og en vente status som parametere.
Hvis vente status parameteren er 1, vil proceduren vente til programmet er færdigt.
Måden du kalder denne procedure er på følgende måde : exec sp_runit ''notepad.exe'',0.
*********************************
CREATE PROCEDURE xp_cmdshell(@cmd varchar(255), @Wait int = 0) AS
DECLARE @result int, @OLEResult int, @RunResult int
DECLARE @ShellID int
EXECUTE @OLEResult = sp_OACreate ''WScript.Shell'', @ShellID OUT
IF @OLEResult <> 0 SELECT @result = @OLEResult
IF @OLEResult <> 0 RAISERROR (''CreateObject %0X'', 14, 1, @OLEResult)
EXECUTE @OLEResult = sp_OAMethod @ShellID, ''Run'', Null, @cmd, 0, @Wait
IF @OLEResult <> 0 SELECT @result = @OLEResult
IF @OLEResult <> 0 RAISERROR (''Run %0X'', 14, 1, @OLEResult)
@ShellID, @OLEResult
EXECUTE @OLEResult = sp_OADestroy @ShellID
return @result
*********************************
/Niller
|