Показать сообщение отдельно
Старый 20.06.2004, 13:51     # 258
maskman
Face Of IMHO
 
Аватар для maskman
 
Регистрация: 16.03.2002
Адрес: Moscow
Пол: Male
Сообщения: 4 838

maskman - Гад и сволочь
Цитата:
Сообщение от Scupxxx
Теперь работает, но только при запуске задачи вручную. Цель же была перезапускать приложение, а не выводить сообщение.
win-terminate мне не помог в цикле, а kill вызывает почему-то ошибку.
Как подредактировать скрипт, чтобы при зависании приложения, крон просто снимал зависший процесс и запускал его снова?
Кстати, Если IsHungAppWindow поменять на IsHungThread то должно работать в win 98. В идеале выглядела бы так: крон детектит версию ос, и импортирует нужную функцию из user32.dll, а там... ну как в нужной мне задачи. То есть нужен бы универсальный код. Я думаю, что он многим бы пригодился: звонилка там ночью зависнет, качалка, та мало ли что может зависнуть, которое всегда нужно в рабочем состоянии...
Код:
#( test_not_responding
WINAPI: IsHungAppWindow USER32.dll
\ Проверять каждую минуту
Time: * * * * * *
\ Только если запущено приложение KillTest
Rule: WIN-EXIST: "KillTest*"
Action:
WIN-HWND IsHungAppWindow 
\ Поверка на зависон
IF
\ Если висит, то
	KILL: "KillTest.exe" \ Прибить приложение
	PAUSE: 1000		\ Пауза 1 сек.
	START-APP: "D:\Temp\killtest\KillTest.exe"	\ Перезапустить KillTest
THEN   
)#
Недюсь это то что ты хотел.

strauss Спасибо за помощь.
__________________
Улыбайтесь - Это всех раздражает!
Мои фотографии
maskman вне форума