Jak wymusić zatrzymanie programu bez użycia myszy w systemie Windows 10?

56

Próbuję debugować aplikację Windows Studio Visual Studio C #, która natychmiast przejmuje pulpit i wyłącza sterowanie myszą. Kiedy się zawiesza, muszę jakoś to zatrzymać. Mogę nacisnąć klawisz Windows lub ctrl-alt-delete i uzyskać dostęp do paska zadań, ale kiedy przesuwam mysz do głównej części ekranu, zawsze jest to ikona klepsydry i nie mogę wchodzić w interakcje. Więc kiedy klikam prawym przyciskiem myszy, aby zamknąć aplikację na pasku zadań i pojawia się okno dialogowe z pytaniem, czy chcę przestać debugować, nie mam sposobu, aby ją kliknąć. Nie mogę też kliknąć niczego w Menedżerze zadań.

Sprawdziłem, jak zakończyć zadania z wiersza polecenia, ale wskazówki nie mają sensu. schtasks /endwymaga argumentu nazwy zadania, który wydaje się podążać ścieżką, ale nie mam możliwości dowiedzenia się, jaką ścieżkę mam wprowadzić. tasklistzwraca nazwy plików i numery identyfikacyjne, ale żadna z nich nie działa schtasks.

Czy ktoś ma jakieś sugestie?

Kyle Delaney
źródło
3
ALT + F4 zamknie każdy program w systemie Windows
Ramhound
58
@Ramhound Alt + F4 wyśle ​​komunikat zamykający okno do aplikacji. Jeśli nie chce sobie z tym poradzić (np. Porzucając wydarzenie lub robiąc coś innego), to nie zadziała.
ζ--
3
@Ramhound Nie zamyka programów innych niż GUI lub programów, które zdecydują się zignorować zdarzenie close.
Carey Gregory,
18
wyciągnij wtyczkę, afaik działało to dla wszystkich wersji systemu Windows.
Sarge Barszcz
10
Używanie Ctrl + Alt + Del, Ctrl + Shift + Esc, Win + R, a więc niekoniecznie wymaga użycia myszy. Prawie wszystkie funkcje systemu Windows mogą być używane tylko za pomocą klawiatury. W tym celu możesz użyć klawiszy strzałek, klawisza Tab lub nawigacji klawiszem Alt.
BlueCacti

Odpowiedzi:

89

Możesz użyć wiersza polecenia, aby zakończyć procesy:

  1. Otwórz pole Uruchom za pomocą Windows+ R.
  2. Wpisz cmdw polu Uruchom i kliknij Enter.
  3. Użyj polecenia, tasklistaby wyświetlić listę wszystkich procesów.
  4. Użyj polecenia, taskkill /F /IM "executable name.exe" /Taby zakończyć proces.
MJ9
źródło
16
Lub po prostu wpisz cmd /C taskkill /f /im "<whatever>" /tw oknie „Uruchom”.
Ismael Miguel
10
@ MJ9 Możesz, musisz być tylko bardzo szybkim czytelnikiem: P
CodesInChaos
16
@ IsmaelMiguel Nie potrzebujesz nawet tej cmd /Cczęści; taskkillnie jest wbudowany w powłokę.
wizzwizz4
4
@ wizzwizz4 OMG! Masz całkowitą rację! Możesz taskkilltam pisać prosto ! Zapomniałem, że jest to plik wykonywalny umieszczony w środku system32(jeśli dobrze pamiętam). Oznacza to ogromną redukcję kroków. A gdy raz to zrobisz, wszystko co musisz zrobić, to Win + Ruderzyć Enter.
Ismael Miguel
3
@ MJ9 „Nie można uruchomić listy cmd /K tasklist
zadań
91

Spróbuj wykonać następujące czynności:

  1. Otwórz Menedżera zadań , naciskając Ctrl+ Shift+Esc
  2. Nawiguj za pomocą klawiszy strzałek ( i ), aby podświetlić problematyczny proces
  3. Naciśnij Deleteklawisz, aby zakończyć proces
  4. W razie potrzeby potwierdź kolejny monit, wybierając odpowiednią opcję za pomocą klawiszy strzałek ( lub ) i naciśnijEnter
Run5k
źródło
2
Będziesz potrzebował Del -> Enter; jest monit.
wizzwizz4
@ wizzwizz4 dzięki za opinie! To bardzo dobra uwaga. W niektórych przypadkach nie ma dodatkowego monitu, ale program, który jest zamrożony, zwykle go ma. Dodałem dodatkowy krok do odpowiedzi.
Run5k
W mojej wersji Menedżera zadań (Win 10 Home) klawisz Delete, aby zabić proces, pojawia się z komunikatem „Czy na pewno chcesz to zrobić? Może to spowodować uszkodzenie systemu”. Chciałbym wiedzieć, dla których systemów to nie zawsze się pojawia.
wizzwizz4
1
@ wizzwizz4 Myślę, że to zależy również od twojego celu. Na moim komputerze z systemem Windows 10 Pro x64 wypróbowałem to w Notatniku, Paint i aplikacji Ustawienia. Każdy z nich zamyka się bez dodatkowych monitów.
Run5k
To działa! Dziękuję Ci. Tutaj mam kilka opcji na poprawną odpowiedź. Mam nadzieję, że nie przeszkadza ci, że wybrałem jedną z mniejszą liczbą głosów. Klawisze strzałek nie reagują przy pierwszym wypróbowaniu rozwiązania, więc powiem, że ten drugi jest bardziej spójny i zawiera kilka dobrych informacji na temat używania wiersza polecenia.
Kyle Delaney
11

Drobna modyfikacja odpowiedzi Taskkill: Możesz użyć symbolu wieloznacznego, jeśli nie pamiętasz / nie znasz dokładnej pełnej nazwy procesu, na przykład:

taskkill /f /im badproce*

Zabije wszystkie pliki wykonywalne zaczynające się od tej nazwy, więc upewnij się, że nie wpisujesz czegoś takiego, s*ponieważ może to oczywiście zabić krytyczne procesy takie jak svchost.

Ponadto, /Tflaga jest dla zabicia drzewo procesów, które jest procesem cel i wszystko dziecko przetwarza go zrodził. Przez większość czasu może nie być to konieczne.

użytkownik1306322
źródło
1
O ile pamiętam, ignoruje ważne procesy przynajmniej w systemie Windows 10. Nie wiedziałem, że akceptuje symbol wieloznaczny. Dzięki.
Codingale
1
Przypomina mi to bardzo głupią rzecz, którą zrobiłem, kiedy zacząłem pracować: musiałem napisać skrypt, który zabił niektóre procesy, których miałem PID, na maszynie uniksowej. Nie pamiętam szczegółów, ale analizowałem wynik ps -efza pomocą wyrażenia regularnego zawierającego PID, a jeśli pasowało, musiałem wysłać kill -9. Teraz, z jakiegoś powodu, moje wyrażenie regularne nie pasowało, więc próbowałem uczynić go „szerszym”. Nie działało. Potem szerszy, potem szerszy ... Sfrustrowany postanowiłem wypróbować coś, co na pewno zadziałało, i użyłem /2/jako wyrażenie regularne dla PID. Tak, zadziałało! kill -9do wszystkich PIDów zawierających 2... X_X
Fabio mówi Przywróć Monikę
Nadal pamiętam moje zdziwienie, kiedy wcisnąłem klawisz Enter, a używana przeze mnie powłoka była zamknięta. Potem zrozumiałem, co się stało. Na dodatek, kill nie działa na procesy innych użytkowników, ale niestety byliśmy jak 20 osób dzielących to samo konto na tym komputerze ... To nie był śmieszny dzień. Morał tej historii jest następujący: jeśli używasz symboli wieloznacznych, zwracaj uwagę!
Fabio mówi Przywróć Monikę
9

pskillNarzędzia Microsoft / Sysinternals można użyć do zabicia procesu za pomocą wiersza polecenia i pozwala on zabijać procesy według numerów identyfikacyjnych procesów lub według nazw procesów. Może być również użyty do zdalnego zabicia procesów: jeśli źle działający program również uniemożliwił ci korzystanie z klawiatury, możesz zainstalować pskillna innym komputerze w sieci lokalnej, aby zabić obrażający proces.

jamesdlin
źródło
7

Możesz zabić proces z innego urządzenia.

Alternatywa A : w „Ustawienia -> Dla programistów -> Włącz portal urządzeń”. Jeśli ją włączysz, otrzymasz portal internetowy, do którego możesz uzyskać dostęp z dowolnego innego urządzenia, które można przeglądać w Internecie. Dzięki niemu możesz wyświetlić listę uruchomionych procesów i zgodnie z dokumentacją :

Na niektórych platformach (Desktop, IoT i HoloLens) możesz zakończyć procesy.

Niestety obecnie wydaje się, że nie działa na moim komputerze, kliknięcie przycisków „X” oprócz każdego procesu nic nie robi.

Alternatywa B : Jeśli masz system Windows Mobile lub inne urządzenie z systemem Windows, możesz zainstalować aplikację VoiceWake ze Sklepu i jej składnik serwerowy na komputerze. Następnie możesz użyć aplikacji do zdalnego zabicia procesu.

I z pewnością istnieją inne aplikacje, które robią to samo.

Tom A. Vibeto
źródło
To bardzo sprytny pomysł! Wolałbym jednak nie poświęcać czasu na jego testowanie, ponieważ mam już pewne działające rozwiązania. Myślę, że to dobry powrót w sytuacji, gdy klawiatura nie reaguje.
Kyle Delaney
5

Nie jestem pewien, gdzie występują problemy z Ctrl+ Alt+ Del, ale mogę go użyć wraz ze strzałkami, aby otworzyć Task Manager. Następnie możesz postępować zgodnie z odpowiedzią @ Run5K, aby zakończyć procesy:

  1. Naciśnij Ctrl+ Alt+Del
  2. Użyj klawiszy strzałek, aby wybrać Task Manageri naciśnij, Enteraby otworzyć (musiałem nacisnąć Enterdwa razy, aby otworzyć Task Manager)

  3. Gdy pojawi się okno dialogowe uprawnienia, za pomocą klawiszy strzałek i Enterwybierz Yes, aby umożliwić Task Manageruprawnienie do dokonywania zmian

    Stąd możesz śledzić odpowiedź @ Run5k z elementu listy (2):

  4. Użyj klawiszy strzałek ( Upi Down), aby wybrać proces, który chcesz zakończyć. Możesz także użyć strzałek Lefti, Rightaby otworzyć / zamknąć zwinięte / rozwinięte elementy i zakończyć podprocesy

  5. Użyj, Delete aby zakończyć proces
  6. Użyj klawiszy strzałek i, Enteraby zarządzać wyświetlanymi oknami dialogowymi
Doug B.
źródło
1

Jeśli debugujesz aplikację, możesz nacisnąć Shift+ F5w programie Visual Studio, aby zamknąć działającą instancję.

Oczywiście, jeśli jesteś w trybie uruchamiania, powinieneś polegać na innych odpowiedziach.

Goufalite
źródło
1
Co to jest klucz MAJ? Masz na myśli Shift?
Mixxiphoid
1
Ups! Poprawny! Edycja mojej odpowiedzi
Goufalite,
1

Wiele lat temu, gdy myszy nie istniały, zamykałem aplikację, naciskając klawisz F10, aby przejść do paska menu, strzałkę w dół, aby otworzyć menu, strzałkę w lewo, aby przejść do menu systemowego, a następnie strzałkę w górę, aby przejść do „Zamknij ”i naciśnij enter. Nadal działa z prostymi aplikacjami, takimi jak Notatnik, w zależności od rodzaju menu, które mają. (Nie pamiętam, dlaczego wtedy faworyzowałem to w porównaniu z Alt-F4, być może było to bardziej imponujące dla ludzi, którzy cię obserwowali;)

IngoB
źródło
Czy Twoja metoda działa w systemie Windows 10? OP pyta konkretnie o Windows 10 (patrz znacznik Windows 10). Zaktualizuj swoją odpowiedź, jeśli działa w systemie Windows 10, lub usuń ją.
alljamin
1
@alljamin: pewnie. Jest to odpowiednik CUA (Common User Application) po naciśnięciu klawisza Alt w celu uzyskania menu. A CUA jest szeroko obsługiwany przez wiele aplikacji Windows. (inne przykłady: Shift-Del do cięcia, Shift-Ins do wstawiania). Szeroko obsługiwany, w tym Windows 10.
TOOGAM
Alt+Space,Cjest podobnym podejściem.
RJFalconer
1

Używam Ctrl+ Shift +, a Esc następnie pojawia się okno Menedżera zadań. Za pomocą Alt-Tab próbuję przejść do menedżera zadań, a następnie nawiguję po otwartych aplikacjach za pomocą klawiszy strzałek. Po wybraniu aplikacji wystarczy nacisnąć przycisk Usuń.

H3NDRX
źródło
-1

Otwórz okno uruchamiania i wpisz:

cmd /c tskill process_name 

tskill to plik programu w katalogu C:\windows\system32

Vishal choudhary
źródło
2
nie ma potrzebycmd /c
phuclv
-3

ALT-F4 to najszybszy sposób.

Inną opcją bez użycia myszy jest CTRL + ALT + DEL, Menedżer zadań i zabij wymaganą aplikację

Kunalpod
źródło