![]() |
Пауза при выполнении скрипта
Всем добрый день!
У меня проблема с DrWeb ES 5, служба постоянно падает и агенты на клиентских машинах не видят сервер. Мне необходимо написать скрипт где сначала эта служба останавливается и только после остановки вновь запускается (рестарт не помогает, т.к вываливается ошибка о невозможности сделать рестарт). У меня есть мои ваяния, но посмотрите пож-та))) и по возможности исправьте set FS = CreateObject("Scripting.FileSystemObject") set WSHShell = CreateObject("WScript.Shell") script_stop = """C:\Program Files\DrWeb Enterprise Server\bin\drwcsd.exe stop""" script_start = """C:\Program Files\DrWeb Enterprise Server\bin\drwcsd.exe start""" WshShell.Run script_stop & "" & script_start, 0, True |
Я не знаю, как запускается и останавливается указанная Вами служба, но, ИМХО, у Вас в коде ошибки. При выполнении Вашего скрипта должна была выскочить ошибка "Не удаётся найти указанный файл". Как минимум надо писать:
script_stop = """C:\Program Files\DrWeb Enterprise Server\bin\drwcsd.exe"" stop" И в методе Run нельзя так механически объединять запуск двух екзешников. На каждый запуск должен быть свой Run. Вот пример, он работает. Увы, указанной Вами службы у меня нет, попробовать не на чем. Код:
Set WS = CreateObject("WScript.Shell") Prg = """C:\Program Files\WinAmp\winamp.exe E:\Audio\Барды\Атланты.mp3""" |
Спасибо за подсказку! Но хотелось бы знать, как сделать паузу при выполнении данного скрипта??? Не понятно! Мне необходимо чтобы сначало выполнялся скрипт на остановку службы, и только после выполнения данного скрипта (остановка службы) осуществлялся запуск второго скрипта (запуск службы)
Код:
set WSHShell = CreateObject("WScript.Shell") |
Можно сделать паузу, но вам не надо. Третий аргумент Run =True. Он отвечает за то, что скрипт дождется окончания Run а затем продолжит выполнение следующего Run.
Пауза в скрипте вообще-то делается WScript.Sleep 60000*0.2 Здесь пауза - 0.2 минуты |
Теперь все понятно, спасибо большое!))
Только вот теперь одно НО. После выполнения первого скрипта на остановку службы появляется фоновое окно с просьбой нажать кнопу ОК, и если кнопка нажата не будет, второй скрипт не будет выполнен)!!! Как теперь это все победить! |
megaloman,
Проблема не решилась! Необходимо сделать так, что бы при появлении фонового сообщения с "Нажать кнопу ОК", втрой скрипт тоже выполнялся или автоматом прописать нажатие на кнопку ОК. А получается так, что если кнопку не нажму, втрой скрипт выполнятся не будет!!! Жду помощи) |
Плохо, не на чем проверить. Вот рабочий пример:
Код:
Set WS = CreateObject("WScript.Shell") Код:
|
Спасибо огромное)))) буду пробывать!
|
Время: 05:45. |
Время: 05:45.
© OSzone.net 2001-