Войти

Показать полную графическую версию : Скрипт для перезапуска TeamViewer


MITYA74
30-08-2014, 07:34
Здравствуйте, форумчане.

Предыстория вопроса такова. Мой комп на работе стал практически продолжением моего домашнего компа. Связь с ним налажена с помощью бесплатной лицензии TeamViewer. Последнее время у провайдера, обслуживающего здание, проблемы со стабильностью инета. Таким образом, при разрыве инета связь с компом теряется и не всегда восстанавливается при включении инета. Теперь суть моего обращения на форум.

Мне нужна помощь в написании скрипта, который бы работал по расписанию и по таймауту (к примеру, раз в час) убивал процесс TeamViewer-а и перезапускал снова. При наличии инета, у меня бы возвращалась связь с рабочим компом. Может даже связать перезапуск именно с отключением-включением интернета, если это не сильно усложнит задачу.
Очень рассчитываю на вашу помощь.

V!RTuE
30-08-2014, 13:25
Открываешь блокнот и пишешь туда этот код:

taskkill /im teamviewer.exe /f /t
"c:\Program Files (x86)\TeamViewer\Version9\teamviewer.exe"
2 строка у тебя может быть другая. В зависимости от того, куда установлен teamviewer.
И сохраняешь в любом месте этот файл, поменяв расширение с *.txt на*.bat (например TeamViewerKill.bat)

Далее заходишь в планировщик заданий (Назначенные задания) и создаешь задачу выполняемую ежечасно, указав при этом, чтобы запускался этот батник (прописываешь путь к батнику). Желательно настроить на то время и дни, в которые ты точно не дома. Иначе когда будешь дома, то каждый час будет появляться окно батника (хотя можно настроить чтобы оно сразу сворачивалось. или же реализовать код в vbs). Но стартовое окно teamviewerа не убрать (или как запустить его сразу в свернутом виде не знаю. Только при запуске винды он может запуститься в свернутом виде)
Если компьютер слабый и не успевает обработать процесс закрытия задачи (или еще по каким-либо причинам), то можно добавить задержку небольшую (например в 10 сек. или любое другое поставь в коде)
::Сворачивание окна батника сразу после запуска
if "%1_"=="_" (START /MIN CMD.EXE /C "%~s0" any_word & EXIT)

::Принудительное завершение процесса и всех его дочерних процессов
taskkill /im teamviewer.exe /f /t

::Пауза в 10 сек (после n можно указать любое другое число)
ping -n 10 127.0.0.1 > NUL

::Полный путь к teamviewer.exe
"c:\Program Files (x86)\TeamViewer\Version9\teamviewer.exe"

Другой вариант. Более красивый и не будет мешать окно батника. Сразу заходишь в планировщик заданий и создаешь 2 задачи для выполнения. И указываешь нужное время запуска и периодичность
1) taskkill /im teamviewer.exe
2) "c:\Program Files (x86)\TeamViewer\Version9\teamviewer.exe"

P.S.: Для удаленного доступа я ставлю помимо teamviewera еще AmmyAdmin. На случай каких-либо зависаний одной из программ




© OSzone.net 2001-2012