53

Я пытаюсь отладить приложение Visual Studio C # для Windows, которое немедленно переходит на рабочий стол и отключает управление мышью. Когда он замерзнет, мне нужно как-то его остановить. Я могу нажать клавишу Windows или Ctrl-Alt-Delete и получить доступ к панели задач, но когда я перемещаю мышь на основную часть моего экрана, это всегда значок песочных часов, и я не могу взаимодействовать. Поэтому, когда я щелкаю правой кнопкой мыши, чтобы закрыть приложение на панели задач, и появляется диалоговое окно с вопросом, хочу ли я прекратить отладку, я не могу щелкнуть по нему. Я также не могу нажать на что-либо в диспетчере задач.

Я посмотрел, как завершить задачи из командной строки, но указания не имеют смысла. schtasks /end требуется аргумент имени задачи, который, кажется, принимает путь, но у меня нет возможности узнать, какой путь я должен ввести. tasklist возвращает имена файлов и идентификационные номера, но ни один из них не работает для schtasks .

У кого-нибудь есть предложения?

11 ответов11

91

Попробуйте следующее:

  1. Откройте диспетчер задач , нажав Ctrl+Shift+Esc
  2. Перейдите с помощью клавиш со стрелками ( и ), чтобы выделить проблемный процесс
  3. Нажмите клавишу Delete, чтобы завершить процесс
  4. При необходимости подтвердите следующее приглашение, выбрав соответствующий выбор с помощью клавиш со стрелками ( или ) и нажмите Enter
86

Вы можете использовать командную строку для завершения процессов:

  1. Откройте окно «Выполнить» с помощью Windows+R.
  2. Введите cmd в поле «Выполнить» и нажмите « Enter».
  3. Используйте список tasklist команды, чтобы вывести список всех процессов.
  4. Используйте команду taskkill /F /IM "executable name.exe" /T чтобы завершить процесс.
10

Небольшая модификация ответа Taskkill: вы можете использовать подстановочный знак, если вы не помните / не знаете точное полное имя процесса, например:

taskkill /f /im badproce*

Он убьет все исполняемые файлы, начинающиеся с этого имени, поэтому убедитесь, что вы не просто набрали что-то вроде s* потому что это, очевидно, может убить критические процессы, такие как svchost .

Кроме того, флаг /T предназначен для уничтожения дерева процессов, которое является целевым процессом и всеми дочерними процессами, которые оно породило. Это может быть необязательно в большинстве случаев.

9

Средство pskill Microsoft/Sysinternals можно использовать для уничтожения процесса с помощью командной строки, и оно позволяет уничтожать процессы по номерам идентификаторов процессов или по именам процессов. Его также можно использовать для удаленного уничтожения процессов: если неправильно работающая программа также помешала вам использовать клавиатуру, вы можете установить pskill на другом компьютере в локальной сети, чтобы завершить процесс, вызывающий сбой .

7

Вы можете убить процесс с другого устройства.

Альтернатива А: в «Настройки -> Для разработчиков -> Включить портал устройства». Если вы включите его, вы получите веб-портал, к которому вы можете получить доступ с любого другого веб-браузера. С его помощью вы можете перечислить запущенные процессы и в соответствии с документацией:

На некоторых платформах (Desktop, IoT и HoloLens) вы можете завершать процессы.

К сожалению, в настоящее время он не работает на моем компьютере, нажатие на кнопки "X", кроме того, что каждый процесс ничего не делает.

Альтернатива Б: Если у вас есть Windows Mobile или другое устройство с Windows, вы можете установить приложение VoiceWake из Магазина и его серверный компонент на ваш компьютер. Затем вы можете использовать приложение, чтобы убить процесс удаленно.

И, конечно, есть и другие приложения, которые делают то же самое.

5

Я не уверен, где происходит проблема с Ctrl+Alt+Del , но я могу использовать его вместе с клавишами со стрелками, чтобы открыть Task Manager . Оттуда вы можете следовать ответу @ Run5K, чтобы завершить процессы:

  1. Нажмите Ctrl+Alt+Del
  2. Используйте клавиши со стрелками, чтобы выбрать Task Manager , и нажмите Enter, чтобы открыть (мне пришлось нажать Enter дважды, чтобы открыть Task Manager)

  3. Когда появится диалоговое окно с разрешениями, используйте клавиши со стрелками и Enter, чтобы выбрать Yes чтобы разрешить Task Manager вносить изменения

    Отсюда вы можете следить за ответом @ Run5k из пункта списка (2):

  4. Используйте клавиши со стрелками (вверх и вниз), чтобы выбрать процесс, который необходимо завершить. Вы также можете использовать стрелки влево и вправо для открытия / закрытия свернутых / развернутых элементов и завершения подпроцессов

  5. Используйте Удалить, чтобы завершить процесс
  6. Используйте клавиши со стрелками и Enter для управления любыми диалоговыми окнами, которые могут появиться
2

Я использую Ctrl + Shift + Esc Затем я получаю окно диспетчера задач. С помощью Alt-Tab я пытаюсь переключиться на диспетчер задач, а затем перемещаюсь по открытым приложениям с помощью клавиш со стрелками. Когда вы выбираете приложение, просто нажмите кнопку Удалить.

1

Если вы отлаживаете приложение, вы можете нажать Shift+F5 в Visual Studio, чтобы закрыть работающий экземпляр.

Конечно, если вы находитесь в режиме запуска, вы должны полагаться на другие ответы.

1

Много лет назад, когда мышей не было, я закрывал приложение, нажимая клавишу F10, чтобы попасть в строку меню, стрелкой вниз, чтобы открыть меню, стрелкой влево, чтобы войти в системное меню, а затем стрелкой вверх, чтобы перейти к "Закрыть". "и нажмите ввод. Он по-прежнему работает с простыми приложениями, такими как Блокнот, в зависимости от типа меню, которое они имеют. (Я не помню, почему я предпочитал это по сравнению с Alt-F4 в то время, возможно, это было более впечатляющим для людей, наблюдающих за вами;)

-1

Откройте Run Box и введите:

cmd /c tskill process_name 

tskill - это программный файл в каталоге C:\windows\system32

-3

ALT-F4 - самый быстрый способ.

Другой вариант без использования мыши - CTRL+ALT+DEL, диспетчер задач и уничтожение необходимого приложения.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .