Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Завершение программы из командной строки (http://forum.oszone.net/showthread.php?t=284088)

А_н_д_р_ей 24-06-2014 10:32 2367778

Завершение программы из командной строки
 
Здравствуйте.
Нужно из батника завершать программу.
tskill <название процесса> работает, но не завершает корректно программу.
Т.е. сама программа при обычном завершении формирует лог, а при убийстве процесса этого не делает.
Спасибо.

Нашёл в google команду, но не уверен, она корректно завершает программу?
C:\WINDOWS\system32\cmd.exe /c taskkill.exe /f /t /im firefox.exe

Iska 24-06-2014 10:41 2367781

О каком конкретно приложении идёт речь?

Elven 24-06-2014 11:04 2367790

А_н_д_р_ей, указанная команда не завершает программу корректно (по крайней мере так, как желаете Вы, исходя из написанного). Taskkill с указанными ключами убивает процесс с /imенем firefox.exe завершае/t все дочерние процессы убитого, причем делает это с про/fессиональным принуждением. Сколь мне известно cmd таких способов вовсе не знает, если программа которую предполагается глушить не имеет возможности работы с командной строкой, а вот если взять например js то вроде бы там было нечто подобное (window.close если моя память не спит с другим), возможно стоит копать в эту сторону, а возможно местные гуру ps1 просто скажут как сие делается в половину запуска какого-нибудь командлета. Скорей всего запустить .js или .ps1 из батника проще чем придумать такой батник, имхо.

Iska 24-06-2014 11:11 2367791

Цитата:

Цитата Elven
Сколь мне известно cmd таких способов вовсе не знает, »

Знает. И именно «taskkill.exe». Без параметра «/f».

Elven 24-06-2014 11:31 2367796

Iska, процесс все равно убивается, а не завершается. Примера для возьмем обычный вордовский файлег "filename.doc", при открытии появляется ~$lename.doc, выполняем taskkill - файлик остается, когда при корректном закрытии он должен удаляться.
Пардоньте на удаленном компе делал, забыл как он применяется.

А_н_д_р_ей 24-06-2014 11:53 2367808

А так правильно: C:\WINDOWS\system32\cmd.exe /c taskkill.exe/t /im firefox.exe ?

Elven 24-06-2014 12:56 2367837

А_н_д_р_ей, по идее - да, правильно. Если что-то не так завершается - нужно смотреть что за софтина.

Iska 24-06-2014 20:09 2368031

А_н_д_р_ей, если речь про Firefox — попробуйте сначала убрать в самом Firefox все предупреждения, возникающие при обычном закрытии (например, предупреждение при закрытии нескольких вкладок и т.п.). См. например параметры конфигурации в:
I want a warning on quitting. | Форум поддержки Firefox | Поддержка Mozilla
Firefox 25.0.1 Warn when closing multiple tabs (on) conflicts with "show windows und tabs from last time" (on); need both, but only one or the other works. | Форум поддержки Firefox | Поддержка Mozilla

После этого, теоретически, должно корректно отрабатывать простое:
Код:

taskkill.exe /im "firefox.exe"


Время: 08:54.

Время: 08:54.
© OSzone.net 2001-