Taskkill / f не вбиває процес


140

Коли я запускаю Експериментальний екземпляр VS від VS для налагодження та зупинки налагодження (іноді безпосередньо від батьківського VS), залишається запущеним процес zombile devenv.exe, який я не в змозі вбити. Він тримається на багатьох моїх колах.

Оскільки я ввійшов на цю 64-бітну машину Win7 як адміністратор, я би сподівався вбити будь-який процес, який мені захочеться.

I tried (from Administrator command prompt):

End Task from Task Manager.
TASKKILL /F /IM devenv.exe
PSKILL devenv.exe

Жодна помилка не повертає TASKKILLта не PSKILLповертає повідомлення про успіх припинення / вбивства процесу. Але devenv.exe все ще працює, він не породжується повторно, оскільки PIDзалишається постійним. Він відходить лише при перезапуску системи, що не є чудовим рішенням.

Примітка. LockHunter показує, що devenv отримав замок на собі. І це не може розблокувати.

Монітор процесів показує, що devenv знаходиться в певній циклі "Профілювання профілю"

Наведений вище знімок екрана - це результат Monitor Monitor, який показує, що devenv знаходиться у певному циклі "Process Profiling" (Клацніть правою кнопкою миші та натисніть на відкрите зображення на новій вкладці, щоб правильно його побачити).

Будь-які ідеї, як вбити такий процес у Windows?


Не маю уявлення, чому ви не отримуєте помилку, але щоб перевірити одне: Ви викликали ці команди з підвищеного командного рядка? Інакше команди не працюватимуть із правами адміністратора, навіть якщо ваш обліковий запис має їх. (Це не повинно дозволяти їм повернути успіх, коли вони явно не вдалися;))
SvenS

1
так, всі команди виконувались із командних підказок адміністратора.
dushyantp

3
Таке запитання більше підходить на superuser.com . Так, у них є досить хороші пояснення. Цей мені допоміг.
Jarekczek

Відповіді:


81

ви також повинні вбити дочірній процес, якщо який-небудь породжений, щоб вбити успішно ваш процес

taskkill /IM "process_name" /T /F

/T = kills child process

/F = forceful termination of your process

25
У моєму випадку він друкує два повідомлення про успіх, але процес все ще є. Якого біса?
CodeManX

3
якщо це буде так просто :) ні, це не допоможе. Я думаю, що його проблема полягає в тому, що процес, який не можна отримати, знаходиться в певному циклі (сокет, введення / вивід, труби ...), де основний процес - це системний процес, і його вбивство зробить систему нестабільною. У цьому випадку я б рекомендував спочатку зрозуміти, що таке цикл. Процес. Якщо цей цикл обмінюється мережею з іншою кінцевою точкою, тоді просто відключіть мережевий кабель або відключіть вже встановлене з'єднання.

75
Я отримую, що There is no running instance of the task цей процес дійсно не хоче вмирати!
демонголем

1
досі мені допоможіть, хоча мені також доводиться вбивати "дитину дитини": taskkill / f / T / PID 4172 ==> ПОМИЛКА: Процес з PID 4172 (дочірній процес PID 4724) не вдалося закінчити. ==> taskkill / f / T / PID 4724 ==> Готово
Hoàng Довгий

1
Так, за нижченаведений /Tперемикач!
kayleeFrye_onDeck

34

Методи набору завдань і повноважень (вбивства) для мене не спрацювали; на ньому все ще було сказано "Заборонено доступ".

Мені пощастило з цим:

wmic process where "name='myprocessname.exe'" delete

6
ПОМИЛКА: Опис = Недійсний запит
user1133275

51
Windows-10. Також: ERROR: Description = Access denied(Використання консолі адміністратора btw)
FractalSpace

1
Дякую! Це спрацьовувало як шарм для мого застрялого вечора
Едуардо Еліас Салех

1
Дивовижно, велике спасибі Провів годину на вбивство, перш ніж я виявив це
Дерек МС

2
Цей у моєму випадку все ще не працює. У Visual Studio застрягла в процесах, запущена команда, і вона говорить, що Видалення екземпляра \\ MyMachine \ ROOT \ CIMV2: Win32_Process.Handle = "6420", видалення екземпляра вдале. Але через 5 хвилин я все ще бачу процес VS devenv.exe у списку диспетчерів завдань. Я не думаю, що тільки перезавантаження - єдине рішення для мене.
wctiger

30

У Windows Server 2008 R2 була та сама проблема, і нічого не допомогло, не менеджер завдань чи завдання. Але, windows powershell працює як адміністратор, що працював із "kill -id pid"


3
Це спрацювало для мене ... хоча, здавалося, було затримка на 30 секунд, перш ніж процес фактично пішов, тож спочатку він здавався невдалим. У випадку, якщо я мав це, це був процес, створений процедурно іншою програмою, в той час як система мала ресурсів. Провідник процесу, вбити дерево дерева процесів та кілька інших речей не вдалося, але це зробило трюк.
Дж. Полдінг

4
Не працювали для мене, дали мені помилку не в змозі вбити процес тощо тощо
rboy

@rboy. Я знаю його старе, але про всяк випадок, коли хтось інший побачить це робити те, що я зробив. Відкрийте панель повноважень як адміністратор та запустіть її. Спочатку я запускав це не як адміністратор, і він сказав мені, що я не можу цього зробити. Тоді я запустив це як адміністратор, і це спрацювало.
Кріс Джонс

Це працювало для мене в Windows 10 із недоброзичливим сервісом Windows. Я вже спробував CMD, у цьому випадку PowerShell - це правильний інструмент
ThetaSinner

5
Не пощастило мені навіть після того, як чекали більше 2-3 хвилин. наразі жодна команда не працює на мене
Tarun Gupta

28

Перезавантаження - єдине рішення, яке працювало для мене (поки що).

Завжди відмінний Марк Руссонович має гарне пояснення незрозумілих процесів.

Підводячи підсумок, цілком можливо, це пов'язано з необробленими запитами вводу / виводу, які не оброблені належним чином (драйвером пристрою, до якого, можливо, звернулась програма)

http://blogs.technet.com/b/markrussinovich/archive/2005/08/17/unkillable-process.aspx


1
Що я зробив, це вимкнути його, а потім перезапустити.
Геллі Енн

10

Я знаю, що пізно, але taskkill /im devenv.exe /t /fтреба працювати. /tвбиває дочірні процеси теж.


12
Це, здається, не працює для мене. Це говорить про те, що це успішно, але процес все-таки проявляється
Скотт Вітлок

2
Я теж стикаюся з подібною проблемою, але з сервісом Microsoft ftp, каже, припинено, але продовжує працювати, не можу це зрозуміти
rboy

1
Якщо замість цього /IM devenv.exeя використовую, /PID 17888помилка в основному сказала, що 17888 - це дитина 17880, а 17880 не працює і тому не може бути вбита.
Джессі Чизгольм

це працює, але переконайтеся, що ви використовуєте cmd у режимі адміністратора.
каран

Мені не вдалося, намагаючись видалити процес Windows Defender, який використовує близько 100% доступу до диска ..
Девід Спектор

7

У моєму випадку, після декількох днів боротьби з цією проблемою (це відбувалося з процесами VirtualBox та µTorrent), я виявив, що це викликано проблемою з мережевим драйвером, спровокованою патчем оновлення Windows KB4338818 (Windows 7 x64). Після видалення цього виправлення все повернулося до норми. Я просто думав, що може бути корисним для інших.


Як ви виявили, що оновлення спричинило це? Я думаю, я б ніколи цього не відкривав. ^^ '
дас Кекс

1
Я зрозумів, що єдине, що змінилося в моїй машині, перш ніж проблема стала очевидною, - це оновлення, тому я перевірив, яке було моє останнє оновлення, і прочитав нотатки до випуску. Це здалося підозрілим, і я відкотився, щоб побачити, чи вирішено питання, що це таке. Потім я читав на деяких форумах Apache, не пам’ятаю, який, що це оновлення спричинило проблеми і для них. BTW: Останнє оновлення Windows станом на 2018 / серпня / 10 виправляє проблему з KB4338818, тому її можна буде встановити заново.
Даніта

6

Я міг би вирішити свою проблему, пов'язану з цією проблемою, вбивши explor.exe, який, у свою чергу, пристрастився до процесу, який я хотів убити. Я думаю, це також може статися, якщо обробляє відкриті інтерфейси через гачок, який може бути заблокований.


1
Я намагався вбити та перезапустити explorer.exe, і це не вийшло.
Скотт Уїтлок

Коли я зробив taskkill /IM "process_name" /T /Fчастину відповіді, був (child process of PID xxxx)такий : я перевірив, що PID, і це було Explorerr.exe, перезапуск його вирішив мою проблему.
Факундо Коломб'є

5

Я бачив це кілька разів, і єдиним моїм рішенням було перезавантаження.

Ви можете спробувати використовувати PowerShell: Get-Process devenv | вбити

Але якщо інші методи провалилися, це, мабуть, теж буде. :-(


Сумно так! Для мене теж справа. ви коли-небудь отримували якесь рішення?
manocha_ak

Не працює для мене на win10: PS D: \ робота \ Проекти \ libtiff.net_bin-2.4.560.0> Get-Process NSPRip | вбити PS D: \ робота \ Проекти \ libtiff.net_bin-2.4.560.0> echo $? Правда PS D: \ робота \ Проекти \ libtiff.net_bin-2.4.560.0> Get-Process NSPRip Обробляє NPM (K) PM (K) WS (K) CPU (s) Id SI ProcessName ------- - ---- ----- ----- ------ - - ----------- 0 0 56 20 0,00 41236 1 NSPRip
zhaorufei

4

Рідні tskill <pid>(або tskill.exe <pid>) працювали для мене в Windows 10, де жодної іншої відповіді не було.

У моєму випадку у мене були деякі процеси chrome.exe, над якими працює «Кінцева задача» диспетчера завдань, але не працювали taskkill /F /T /PID <pid>ні kill -id <pid>обидва оболонки (навіть з обома оболонками, які працюють як адміністратор).

Це дуже дивно, оскільки taskkillвважається, що це краща версія api-and-do-more tskill.

У моєму випадку вбивати всі екземпляри певного завдання, яке я використав FOR /F "usebackq tokens=2 skip=2" %i IN (`TASKLIST /FI "IMAGENAME eq name_of_task.exe"`) DO tskill %i


1
Це працювало для мене, коли ніхто з інших цього не робив. Thx: D
jk1990

3
Не працювало для мене. ОтримавEnd Process failed for 10576:Access is denied.
twasbrillig

Так само і для мене. Що я не можу зрозуміти, це чому? Передбачуване завдання повинно бути таким же, як tskill [досить краще, в документації тощо]. Якби хтось міг відповісти?
dvlper

1
Здається, що в Windows 10 немає проблем
raffaem

Мені не вдалося, намагаючись видалити процес Windows Defender, який використовує близько 100% доступу до диска ..
Девід Спектор

3

Я збираюся щось запропонувати тут, тому що я нещодавно зіткнувся з одним і тим же питанням і намагався відповісти на все можливе, але нічого не вийшло. Я отримував помилки на кшталт

ПОМИЛКА. Процес з PID 23908 не вдалося припинити. Причина: Немає запущеного екземпляра завдання.

за допомогою командного рядка. Силова оболонка теж не була корисною. воно просто виконає команди і не буде відповіді, коли процес все ще працює.

Поки я не вирішив видалити пов'язаний файл ".exe". Оскільки файл був активним, Windows не дозволить видалити, але в цьому вікні попередження він дав мені назву процесу, який витримував завдання, яке я хотів убити. Мені вдалося вбити оригінальну задачу і, таким чином, баггі процес.

Однозначно варто спробувати, якщо жодне з рішень не виходить.


3

Я отримував такі результати з taskkill

>taskkill /im "MyApp.exe" /t /f
ERROR: The process with PID 32040 (child process of PID 54176) could not be terminated.
Reason: There is no running instance of the task.

>taskkill /pid 54176  /t /f
ERROR: The process "54176" not found.

Те, що працювало для мене, було сисинтернальним pskill

>pskill.exe -t 32040

PsKill v1.15 - Terminates processes on local or remote systems
Copyright (C) 1999-2012  Mark Russinovich
Sysinternals - www.sysinternals.com

Process 32040 killed.

Ви можете дістатися pskillз веб-сайту Sysinternal


2
Не працювало для мене. Отримав:Unable to kill process 10576: Access is denied.
twasbrillig

1
Можливо, вам доведеться це зробити з командної оболонки з правами адміністратора?
BenV136

2

Деякі файли Exe залежать від деяких служб,

Тож вам потрібно знайти відповідну послугу і спочатку зупинитися.


4
будь-які підказки, як це зробити? У програмі taskmanager не відображається жодна служба, що відповідає devenv.exe. Зараз я намагаюся відтворити проблему, як тільки я виконаю, я скористаюсь провідником процесів, щоб викопати сервіси, які могли б його утримувати.
душіантп

2

Така сама проблема трапилася і у VirtualBox стосовно процесів Java.

У моєму випадку це сталося через помилку в патчі оновлення Windows KB4338818 (Windows 7 x64).

Я вирішив це, зробивши наступне:

  • Видаліть патч оновлення Windows KB4338818
  • Встановіть патч оновлення Windows KB4338821

2

Запуск адміністратора працює для мене:

1.дослідження cmdу вікнах

2.Вказ натисніть кнопку " cmdВибрати як адміністратор".

3.netstat -ano | findstr :8080

4.taskkill/pid (your number) /F

Мій результат


Якщо ви отримаєте помилку, наприклад: 'nestat' не розпізнається як внутрішня чи зовнішня команда, функціонуюча програма або пакетний файл. вам може знадобитися запустити команду як C: \ Windows \ system32 \ netstat.exe, а не просто nestat
sk8asd123

2

Для мене, як це працювало, я маю вбити батьківський процес. Позначте батьківський процес і вбийте його

taskkill /IM "parent_process_name.exe" /T /F

1

У мене є проблема з налагодженими процесами з gdb в Code :: Blocks. Як тільки він зависає, випадково вступаючи в інструкції поза межами ваших джерел (як libs без джерел або системних функцій), ви не можете вийти з налагодження ні з Code :: Blocks, ні з Task-Manager.

Я думаю, що це помилка в реалізації gdb в Code :: Blocks, але може бути і в gdb;)

Моє рішення:

taskkill /F /IM process.exe /T

Це показує PID батьківського процесу. Тепер убийте батьків:

taskkill /PID yyyy

Обидва пішли.

Зроблено.


1
Можливо, для батьківського PID не існує.
користувач1133275

Вкажіть, будь ласка, що таке gdb та Code :: Blocks;)
синюватий

3
Попередження: якщо батьківський процес services.exeвбиває батьків, це може спричинити BSOD
MM

1

якщо taskkill /F /T /PID <pid>не працює. Спробуйте відкрити термінал ур Run as Administrator.

Шукайте cmdв меню Windows ур і клацніть правою кнопкою миші Run as Administrator, а потім запустіть команду ще раз. Це працювало для мене.


1

Якщо ви завантажуєте безкоштовний пакет sysinternals, у нього є програма pskill.exe, яка добре працює для таких типів завдань: pskill.exe "process_name" Вона працює в цих процесах навіть без використання опції -t.


1

Я зробив наступне на підвищеній силовій оболонці:

PS C:\Windows\system32> wmic.exe /interactive:off process where "name like `'java%'`" call terminate

Виведення команди:

Executing (\\SRV\ROOT\CIMV2:Win32_Process.Handle="3064")->terminate()
Method execution successful.

Вихідні параметри:

instance of __PARAMETERS
{ReturnValue = 0; };

Я отримав інформацію про синтаксис на веб- сайті: https://community.spiceworks.com/topic/871561-wmic-error-like-invalid-alias-verb


Це справді спрацювало, слід прийняти відповідь. Спасибі
Джон Ньюмен


0

Я зіткнувся з тією ж проблемою, коли я запустив додаток для вузла в порту 3000, і він не закрився правильно, і процес продовжував працювати навіть після перезавантаження.

Жодна з команд завдання або функцій оболонки, що працює в режимі адміністратора, не працювала для мене.

Я використовував MS Process Expoler> Властивості> Зображення> Поточний каталог (який повинен був бути моїм проектом каталогу).

Нарешті, мені довелося перезавантажитись у SafeMode та перейменувати папку проекту та перезапустити. Процеси Вузла, які споживали порт 3000, вбили себе.


0

У мене була точно така ж проблема, я знайшов це виправлення на іншому сайті: powershell.exe "Get-Process processname | Stop-Process" він працював на мене, і я був у тому ж човні, де мені довелося перезапустити, / T не працюватиме .


0

Як зазначив Франциск, деякий процес не може бути припинений через

"необроблені запити вводу / виводу"

На моєму досвіді я мав справу з баггі- графічним драйвером, який би спричинив аварію моєї гри і не зміг її закрити, оскільки в останню чергу я відключив графічний драйвер, і процес остаточно пішов з ладу .

Якщо у вашій програмі чекає ресурс від драйвера, як-от Wi-Fi або графічний, спробуйте відключити їх у диспетчері пристроїв , вам потрібно копати трохи глибше, щоб побачити, де вони повішені.

Це, звичайно, не рекомендується, але іноді більше нічого втрачати.


0

У мене була така ж проблема, і, як і багато інших тут, сказали, що жодна з нормальних команд Kill не працює. Мій файл проблеми був виконуваним файлом, який запускався користувачем мережі на сервері віддаленого робочого столу. З декількома спільними користувачами непросто перезапустити робочий день. Навіть коли користувач вийшов із програми exe, він все ще був вказаний у диспетчері завдань. Я надіслав на сервер, де папка була спільною, і з управління комп'ютером -> Сеанси знайшли користувача, коли сеанс все ще відкритий з цього сервера RDP, навіть якщо він вийшов із системи. Клацніть правою кнопкою миші -> Закрити сесію, і блокування файлів було звільнено.

Побиває мене, чому я не міг закінчити дії. Повідомлення про помилку, яке я отримував спочатку під час спроби та видалення файлу, було "Дію неможливо виконати, оскільки файл відкритий у системі"

Сподіваюсь, це допомагає комусь іншому.


0

У моєму випадку жодне з рішень тут не спрацювало. Зрештою я виявив, що програма, про яку йде мова, заморожена, намагаючись опитати аудіоінтерфейси USB. Тож я відключив USB-ЦАП, який я підключив, і, на моє здивування, програма миттєво кинула. У відповіді Френсіса згадується, що це може бути результатом "необроблених запитів вводу / виводу, які не оброблені належним чином (драйвером пристрою, можливо, звернувся до вашої програми)", що може пояснити, чому це виправлено.

Я думаю, це дійсно залежить від того, що робила програма, коли вона замерзла, але якщо жодне з інших рішень не працює, спробуйте відключити всі USB-пристрої, щоб побачити, чи може хтось із них стати причиною.



-8
  1. відкритий менеджер завдань
  2. виберіть вкладку "Послуги"
  3. виберіть процес (devenv.exe), який потрібно вбити та натисніть кнопку служби
  4. прямо в процесі, виберіть властивості та відключіть його ...
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.