Един познат ме помоли да направя програма, която да проверява определени процеси, дали са живи и ако не са да ги пуска и да го уведомява по мрежата. Освен това да прави проверка дали има пинг към две IP-та.
Обикновено подобни задачи ги изпълнявам на един не особено популярен скриптов език - AutoIt. За да разберете, колко е лесно, да се създават подобни приложения, ето и конкретния пример опростен, до един процес и едно IP за пинг:
While 1 ;Стартиране на безкраен цикъл
$PID = ProcessExists("process.exe") ;Проверка за статуса на процеса
If $PID = 0 Then ;Ако статусът е нула, следователно процесът не е активен
Run ("C:\process.exe") ;Стартиране на процеса наново
Run ("send.cmd") ;изпращане на съобщения към администратора, чрез net send команда, поставена в cmd файл
EndIf$ping=Ping("86.59.28.43") ;Ping-ване на IP-то
if $ping=0 Then
run ("sendping.cmd") ;При липса на ping изпращане на съобщения към админстратора, чрез net send команда, поставена в cmd файлEndIf
sleep(50000) ;Период на пауза - в случая 50 секунди
Wend ;Край на цикъла
В send.cmd и netsend.cmd има следното съобщение:
net send pc270145 Procesut e restartiran!
Където pc270145 всъщност може да бъде всякакво име на компютър или IP на където да пусне съобщението.
Няма коментари:
Публикуване на коментар