2010-07-11 4 views
0

У меня есть куча консольных хост-приложений, на которых размещаются службы WCF. Я вызываю файл .bat в качестве шага предварительной сборки, чтобы убить все запущенные экземпляры хоста, чтобы я не получал ошибки регистрации канала WCF (вручную убивая консольные хосты каждый раз, прежде чем сборка является королевской болью).TaskKill для уничтожения консольного приложения .NET

Файл .bat, который я создал, содержит следующее.

taskkill /T /F /FI "imagename eq Host.vshost.exe" 
taskkill /T /F /FI "imagename eq Host.exe" 
exit /B 0 

Это убивает оба процесса. Я вижу в taskmanager, что Host.exe ушел, и у Host.vshost.exe есть новый PID, но окно консоли все еще работает. Кажется, что cmd.exe является сам процесс с консолью, так что я тогда изменил .bat файл с этим ..

taskkill /T /F /FI "imagename eq cmd.exe" 

Но это убивает все cmd.exe окна.

Как я могу настроить это, чтобы я мог ориентироваться только на конкретное окно cmd конкретного консольного приложения или есть ли другая команда, которую я должен использовать?

+0

Если вы публикуете (пакетный) код или XML, ** пожалуйста ** выделите эти строки в текстовом редакторе и нажмите кнопку «код» (101 010) на панели инструментов редактора, чтобы красиво отформатировать и выделить синтаксис! –

ответ

0

taskkill имеет несколько вариантов, которые помогут вам сузить процесс, который вы хотите убить. Например, это заголовок окна процесса CMD.EXE, который вы хотите уничтожить уникальным (например, «пакетная обработка» вместо стандартного «C: \ WINDOWS \ System32 \ cmd.exe»)? Затем используйте

taskkill /F /T /FI "WINDOWTITLE eq Batch Processing" 

Если вам необходимо изменить название целевого окна, вы можете сделать это из пакетного файла целевой команды TITLE Your Title Here, или начав этот процесс с помощью команды start "Your Title Here" ....

+0

Это работает. Я изменил заголовок окна в консольном приложении .NET и смог использовать параметр Taskkill для таргетинга на окно по названию. Благодаря!!! –

+0

Рад, что решил это для вас! – ewall

Смежные вопросы