xp_cmdshell (вернуть 1)

PaulWist
Дата: 13.09.2006 12:03:48
Господа.

есть код

EXEC @ReturnCode = master..xp_cmdshell 'MyProg'

MyProg - выполняет какие-то действия, ну например проверяет наличие файла, если файл есть, то всё ОК, если файла нет, то надо добиться, что бы master..xp_cmdshell 'MyProg' вернула единичку.
Вообщем-то вопрос, как такое осуществить.
pavel73
Дата: 13.09.2006 12:07:32
А он и вернет 1
MSSQLUral
Дата: 13.09.2006 12:08:36
BOL

DECLARE @result int
EXEC @result = xp_cmdshell 'dir *.exe'
IF (@result = 0)
   PRINT 'Success'
ELSE
   PRINT 'Failure'
-=DiM@n=-
Дата: 13.09.2006 12:08:56
а MyProg - это какая-то собственноручно написанная программа или чаво?!
PaulWist
Дата: 13.09.2006 12:14:54
-=DiM@n=-
а MyProg - это какая-то собственноручно написанная программа или чаво?!


Ну да.

Вся проблема в том, что MyProg отработает нормально, те выполнится нормально и ОС скажет что всё выполнилось хорошо, НО для ХП исходя из внутренней логики самой ХП надо получить 1, если в MyProg не прошли проверку какие-то характеристики.
Конечно можно программно завалить MyProg, но это как-то не красиво.
SomethingWrong
Дата: 13.09.2006 12:27:02
http://www.sql.ru/forum/actualthread.aspx?tid=337427

тут под конец прикол конечно пошел с пингом, но тем не менее
ведь она возвращает данные
заставь программу вернуть один параметр, и его получишь на селекте
PaulWist
Дата: 13.09.2006 12:33:45
SomethingWrong
http://www.sql.ru/forum/actualthread.aspx?tid=337427

тут под конец прикол конечно пошел с пингом, но тем не менее
ведь она возвращает данные
заставь программу вернуть один параметр, и его получишь на селекте


В том-то и дело, что ХП вызывающая xp_cmdshell - не моя (иначе вопроса не было бы), мне надо как-то вернуть 1 в ХП? если что-то не сраслось в MyProg.
PaulWist
Дата: 13.09.2006 14:18:12
Решение найдено (подсказано)

Declare integer ExitProcess in win32api integer  
ExitProcess(1)