Каждую ночь запускается задача, которая проверяет, имеет ли какая-либо запланированная задача последний результат, не равный 0x0. Если в запланированных заданиях есть ошибка, например 0x1, мне автоматически отправляется электронное письмо. Поскольку некоторые задачи выполняются только еженедельно, а иногда возникает ошибка, которая не равна 0x0, каждую ночь отправляется электронное письмо с сообщением об ошибке, поскольку в столбце «Последний результат» по-прежнему отображается последний результат 0x1. Но я бы хотел установить для столбца Last Result значение 0x0 вручную, если я решил проблему, поэтому я не буду каждый вечер получать электронное письмо с сообщением об ошибке.
Так можно ли установить для заданных задач Last Result значение 0x0 вручную (или с помощью скрипта)?
@harrymc. Посмотрите локализованный скрипт, под которым отправляется электронное письмо. Я могу легко добавить критерий, чтобы игнорировать результат 0x1 (или другой код), однако это не решение, поскольку в большинстве случаев этот результат является реальной ошибкой и должен быть отправлен по электронной почте.
set YourEmailAddress=to@email.com
set SMTPServer=SMTPserver
set PathToScript=c:\scripts
set FromAddress=from@email.com
for /F "delims=" %%a in ('schtasks /query /v /fo:list ^| findstr /i "Taskname Result"') do call :Sub %%a
goto :eof
:Sub
set Line=%*
set BOL=%Line:~0,4%
set MOL=%Line:~38%
if /i %BOL%==Task (
set name=%MOL%
goto :eof
)
set result=%MOL%
echo Task Name=%name%, Task Result=%result%
if not %result%==0 (
echo Task %name% failed with result %result% > %PathToScript%\taskcheckerlog.txt
bmail %PathToScript%\taskcheckerlog.txt -t %YourEmailAddress% -a "Warning! Failed %name% Scheduled Task on %computername%" -s %SMTPServer% -f %FromAddress% -b "Task %name% failed with result %result% on CorVu scheduler %computername%"
)