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

Содержание:

WMIC

Для управления системами Windows с помощью разных графических утилит часто используется WMI (Windows Management Instrumentation) ― реализация объектно-ориентированного стандарта управления WBEM. В качестве утилиты с графическим интерфейсом для работы с WMI можно использовать wbemtest.exe.

Для работы с WMI из консоли создана wmic.exe. Например, для проверки установленных обновлений вместо жутковатой конструкции из предыдущего примера можно использовать простую команду:

Использовать список компьютеров также можно командой /node:»@computers.txt».

Еще при помощи WMI можно запускать программы – синтаксис предельно прост:

К сожалению, в отличие от Psexec, получить вывод в консоли не получится ― придется выводить результаты команды в файл.

По умолчанию процесс на удаленной машине выполняется от имени пользователя, запустившего wmic. При необходимости логин и пароль можно задать явно.

Другие способы

Самый тяжелый случай, это когда зависла какая-нибудь программа или игра, которая была развернута на весь экран монитора. В этом случае вы не будете иметь доступа к «Рабочему столу», к «Диспетчеру задач», а также в меню «Пуск».

В этом случае попробуйте выйти из окна с зависшей программой на «Рабочий стол», при помощи клавиш на клавиатуре.

Нажмите на клавиши клавиатуры «Alt» + «F4». Эта комбинация клавиш в операционной системе Windows служит для закрытия приложений.

Можно попробовать нажать на клавиатуре на клавиши «Esc» или «Enter», возможно, в некоторых случаях, получится получить доступ к Рабочему столу.

Вам также может быть интересно:

  • Оптимизация Windows 10 для ускорения работы ПК
  • Очистка Windows 10: автоматическое и ручное удаление ненужных файлов

При нажатии на клавишу «Windows» также, иногда, можно попасть на Рабочий стол, при зависшей программе.

Попробуйте нажать на клавиатуре на функциональные клавиши «F1» — «F12». В некоторых случаях, нажатие на эти клавиши приводит к открытию Рабочего стола. Какая конкретно функциональная клавиша может помочь, зависит от конкретного компьютера, у разных компьютеров это бывает по-разному.

Если открылся Рабочий стол, то для выхода из зависшего приложения проделайте действия, описанные выше в этой статье.

Но, бывают такие ситуации, когда компьютер не реагирует ни на какие действия пользователя. Мышь не работает, на нажатия клавиш на клавиатуре, компьютер также никак не реагирует. В этом случае перезагрузки операционной системы уже не удастся избежать. Тогда вам придется нажать на кнопку «Reset» (Перезагрузка).

Какие программы и процессы в Windows 7 можно убрать

В Windows 7 три категории данных, загружающих систему — программы, процессы и службы. Программа устанавливается на компьютер для выполнения функции, необходимой пользователю. Процесс может быть системным, необходимым для корректной работы Windows 7, и пользовательским, запущенным вместе с программой. Службы в системе запускаются по умолчанию и отключаются через «Управление компьютером».

Индекс производительности Windows снижается, если при старте системы автоматически запускается чрезмерное количество программ и процессов

Процессы можно отключить через «Диспетчер задач» (инструкция приведена ниже).

Таблица: какие процессы можно отключить без вреда для системы

Процесс Описание
soffice Отвечает за работу Open Office.
reader_sl Ускоритель Adobe Reader.
hkcmd Процесс Intel, сопровождает аппаратное обеспечение компьютера.
adobeARM Проверяет обновления Adobe Reader.
RAVCpl64 Аудиоменеджер от Realteck.
CCC Контрольный центр для видеокарт ATI, нужен, только если вы играете в игры.
neroCheck Ищет конфликтующие драйверы.
jqs Ускоряет работу программ на Java.
jusched Ищет обновления для Java.
wmpnetwk Система поиска Windows Media Player.
osppsvc Защита программ MS Office 2010.
sidebar Отвечает за работу гаджетов Windows 7.
nwiz Отвечает за действия nVidia NView.
atiptaxx Открывает доступ к настройкам ATI-видеокарт.

Таблица: процессы, которые нельзя отключать

Процесс Описание
taskshot Хост-файл.
msdtc Координатор транзакций сетевых систем.
smss Управление сеансами Windows.
wininit Автозапуск программ.
winlogon Вход в Windows.
services Запуск служб Windows.
explorer Рабочий стол, ярлыки.
spoolsy Поддерживает очередь печати.
lsm Управляет состоянием сеансов.
taskmgr Отвечает за работу диспетчера задач.
searchindexer Индексирование поиска.
csrss Отвечает за консольные приложения.
sppsvc Защита платформы Windows.
svhost Отвечает за сетевой обмен.
conhost Для обработки консольных окон.
lsass Сохраняет локальную безопасность пользователей.

Если вы не уверены, можно ли завершить процесс, откройте расположение исполняемого файла. Если он находится в системной папке Windows, не стоит его останавливать.

Помимо процессов, в системе Windows работают службы, часть из которых с помощью меню «Управление компьютером» можно закрыть без ущерба для безопасности ПК. Список служб, которые можно остановить:

  • факс;
  • удалённое управление Windows;
  • удалённый реестр;
  • удалённые рабочие столы;
  • поддержка Bluetooth;
  • сервер удалённых рабочих столов;
  • вторичный вход в систему;
  • загрузка изображений Windows;
  • смарт-карта;
  • диспетчер автоподключений удалённого доступа;
  • координатор распределенных транзакций (КРТ);
  • ktmrm для КРТ.

Если вы не используете локальную сеть, отключите службу «Модуль поддержки NetBIOS» и переведите на ручной режим службу «Браузер компьютеров».

Откуда появляются лишние программы

Сторонний софт устанавливают на компьютер производители. Так, купив ноутбук с операционной системой, вы наверняка увидите на рабочем столе от двух до десяти ярлыков неизвестного назначения. Другие программы, называемые паразитами, устанавливаются параллельно с необходимым софтом. Вы скачиваете, к примеру, видеоплейер. Запускаете установку, по окончании которой на рабочем столе возникает ярлык программы, а с ним — ещё три. Это предустановленный софт, против которого не работают антивирусы и чистильщики реестра. Программы не несут вреда для системы, но изрядно замедляют работу Windows 7.

Пример программы-паразита — Guard Mail.ru

Как перезапустить или выключить компьютер через — bat

Если вы часто перезагружаете компьютер через удаленный рабочий стол, то неплохо создать файл (.bat) на рабочем столе.

Для этого создайте «Текстовый документ» (txt) и назовите его «Restart.bat». При этом у вас должен быть включен показ расширений (иначе ничего не увидите).

Если вы не видите расширение .bat, вы должны в «Параметры папки» и снять о.

Теперь в созданном файле впишите команду (лучше это делать до переименования на «Restart.bat»), например — shutdown /r /f. Затем закрываем, сохраняя изменения и можем запустить файл.

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

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

Для тех, кто еще не полностью знаком с такими процедурами, приводу несколько команд, как пример: shutdown -a -f -t 30 — m \\192.168.3.4/

На этом этапе я вам рекомендую в командной строке запустить: shutdown /? – вам будут сразу показаны все поддерживаемые команды.

  1. Так -a — команда «Завершение» может быть выполнена во время действия «Задержка выключения».
  2. -f: заставляет отключать приложения, запущенные в данный момент без предупреждения.
  3. -t xx: устанавливает обратный отсчет в секундах.
  4. -m \\ xxx.xxx.xxx.xxx: IP-адрес целевого компьютера.
  5. Графика доступна после команды: Shutdown -i.

Остановка

Самый простой оператор управления порядком выполнения программы — это остановка, которая сообщает программе немедленно прекратить свое выполнение. В языке C++ остановка осуществляется с помощью функции exit(), которая определена в заголовочном файле cstdlib. Функция exit() принимает целочисленный параметр, который затем возвращает обратно в операционную систему в качестве кода выхода. Например:

#include <iostream>
#include <cstdlib> // для функции exit()

int main()
{
std::cout << 5;
exit(0); // завершаем выполнение программы и возвращаем 0 обратно в операционную систему

// Следующие стейтменты никогда не выполнятся
std::cout << 3;
return 0;
}

1
2
3
4
5
6
7
8
9
10
11
12

#include <iostream>
#include <cstdlib> // для функции exit()

intmain()

{

std::cout<<5;

exit();// завершаем выполнение программы и возвращаем 0 обратно в операционную систему

// Следующие стейтменты никогда не выполнятся

std::cout<<3;

return;

}

Как запустить командную строку от администратора в Windows 7?

В этой инструкции мы будем часто пользоваться CMD, поэтому сначала рассмотрим вопрос ее запуска. Чтобы открыть программу, воспользуйтесь одним из способов ниже.

Способ 1

В поиске «Пуска» введите «командная строка» или «cmd» (без кавычек). Система найдет утилиту, вам останется только ее открыть.

Открываем меню «Пуск», в поисковике вводим «командная строка» или «cmd» (без кавычек), открываем найденную системой утилиту

Способ 2

  1. Откройте приложение «Выполнить». Его название можно вбить в тот же поиск «Пуска».

    Открываем меню «Пуск», в поисковике вводим «выполнить», открываем найденный результат

    Раскрываем меню «Пуск», находим пункт «Выполнить» щелкаем по нему

  2. Уже в самом приложении введите cmd.exe и нажмите «ОК».

    В поле «Открыть» вводим cmd.exe и нажимаем «ОК»

Автоматическое «закрытие» приложений, которые не отвечают

Первый метод заключается во внесении изменений в настройки системы, благодаря чему Windows автоматически закрывает приложения, которые находятся в статусе «Не отвечает», то есть те что зависли.

Чтобы активировать эту функцию, перейдите в Редактор реестра. Для этого нажмите сочетание клавиш Windows + R, введите в окно Выполнить команду regedit и подтвердите её запуск на Enter. В окне редактора перейдите по следующему пути:

HKEY_CURRENT_USER/Control Panel/Desktop.

Затем щелкните правой кнопкой мыши на записи Desktop и выберите «Создать — Строковый параметр».

Созданный параметр именуем как AutoEndTasks, затем щелкните на него дважды и присвойте ему значение «1», чтобы активировать. После этого следует перезапустить систему и готово – теперь все приложения запущенные под учетной записью пользователя Windows будут автоматически закрываться в момент, когда зависнут.

Выключить или перезагрузить компьютер используя команду Shutdown

Чтобы перезагрузить или выключить компьютер с помощью удаленного рабочего стола можете воспользоваться командной shutdown через командную строку.

После запуска командной строки в черном окне введите:

shutdown /r /f

Далее используйте команду:

/r – перезагрузить

Или

/f — принудительно перезагрузить (игнорировать мешающие процессы) процессов

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

Если хотите выключить и перезагрузить компьютер или ноутбук если он завис то зависший пробуйте через: /f – может получится.

В случае сбоя, я рекомендую запустить командную сроку в качестве админа, особенно если активирован контроль учетных записей.

Как удалить программу через командную строку в Windows 7

Бывает, что программа не удаляется стандартным приложением Windows (из панели управления). Чтобы навсегда удалить ПО, очистив не только его файлы, но и данные в реестре, пригодится командная строка.

Шаг 1. Запускаем CMD.

Открываем меню «Пуск», в поисковике вводим «командная строка» или «cmd» (без кавычек), открываем найденную системой утилиту

Шаг 2. Вбиваем «wmic».


Вводим команду «wmic», нажимаем «Enter»

Шаг 3. Теперь нужно узнать наименования конкретного приложения в Windows, чтобы не ошибиться и не удалить полезный софт. Для этого вбиваем «product get name» (дословно — «получить имя продукта»).


В следующем поле вводим команду «product get name», нажимаем «Enter»

Шаг 4. Деинсталлируем программу в командной строке. Остается только вбить текст «product where name=”название программы” call uninstall». Текст в кавычках – это наименование софта их списка, предоставленного командной строкой.

Вводим команду «product where name=”название программы” call uninstall», вместо «название программы», название удаляемого софта, щелкаем «Enter»

Шаг 5. Готово! Проверить, удален софт или нет можно зайдя в приложение «Удаление программы» из «Панели управления». Если в списке ПО нет – значит операция выполнена успешно.

Какие программы и процессы в Windows 7 можно убрать

В Windows 7 три категории данных, загружающих систему — программы, процессы и службы. Программа устанавливается на компьютер для выполнения функции, необходимой пользователю. Процесс может быть системным, необходимым для корректной работы Windows 7, и пользовательским, запущенным вместе с программой. Службы в системе запускаются по умолчанию и отключаются через «Управление компьютером».

Индекс производительности Windows снижается, если при старте системы автоматически запускается чрезмерное количество программ и процессов

Процессы можно отключить через «Диспетчер задач» (инструкция приведена ниже).

Таблица: какие процессы можно отключить без вреда для системы

Процесс Описание
soffice Отвечает за работу Open Office.
reader_sl Ускоритель Adobe Reader.
hkcmd Процесс Intel, сопровождает аппаратное обеспечение компьютера.
adobeARM Проверяет обновления Adobe Reader.
RAVCpl64 Аудиоменеджер от Realteck.
CCC Контрольный центр для видеокарт ATI, нужен, только если вы играете в игры.
neroCheck Ищет конфликтующие драйверы.
jqs Ускоряет работу программ на Java.
jusched Ищет обновления для Java.
wmpnetwk Система поиска Windows Media Player.
osppsvc Защита программ MS Office 2010.
sidebar Отвечает за работу гаджетов Windows 7.
nwiz Отвечает за действия nVidia NView.
atiptaxx Открывает доступ к настройкам ATI-видеокарт.

Таблица: процессы, которые нельзя отключать

Процесс Описание
taskshot Хост-файл.
msdtc Координатор транзакций сетевых систем.
smss Управление сеансами Windows.
wininit Автозапуск программ.
winlogon Вход в Windows.
services Запуск служб Windows.
explorer Рабочий стол, ярлыки.
spoolsy Поддерживает очередь печати.
lsm Управляет состоянием сеансов.
taskmgr Отвечает за работу диспетчера задач.
searchindexer Индексирование поиска.
csrss Отвечает за консольные приложения.
sppsvc Защита платформы Windows.
svhost Отвечает за сетевой обмен.
conhost Для обработки консольных окон.
lsass Сохраняет локальную безопасность пользователей.

Если вы не уверены, можно ли завершить процесс, откройте расположение исполняемого файла. Если он находится в системной папке Windows, не стоит его останавливать.

Помимо процессов, в системе Windows работают службы, часть из которых с помощью меню «Управление компьютером» можно закрыть без ущерба для безопасности ПК. Список служб, которые можно остановить:

  • факс;
  • удалённое управление Windows;
  • удалённый реестр;
  • удалённые рабочие столы;
  • поддержка Bluetooth;
  • сервер удалённых рабочих столов;
  • вторичный вход в систему;
  • загрузка изображений Windows;
  • смарт-карта;
  • диспетчер автоподключений удалённого доступа;
  • координатор распределенных транзакций (КРТ);
  • ktmrm для КРТ.

Если вы не используете локальную сеть, отключите службу «Модуль поддержки NetBIOS» и переведите на ручной режим службу «Браузер компьютеров».

Как удалить программу в Windows 7

Вид окна «Категория»:

Чтобы удалить программу в windows 7, откройте меню “Пуск” и выберите “Панель управления”.

В разделе «Программы» кликните по надписи “Удалить программу”.

Перед вами откроется список установленных программ.

Выберите в списке нужную и нажмите на неё правой кнопкой мыши.

В открывшемся меню выберите “Удалить/изменить”.

Далее подтвердите удаление.

Следуйте инструкциям мастера.

Программа полностью удалена с компьютера.

Вид окна «Крупные или мелкие значки»:

Чтобы удалить программу в windows 7, откройте меню “Пуск” и выберите «Панель управления».

Появится окно «Панель управления». В этом окне двойным нажатием левой кнопки мыши вызываем «Программы и компоненты».

Перед вами откроется список установленных программ. Выберите в списке нужную и нажмите на неё правой кнопкой мыши.

В открывшемся меню выберите “Удалить/изменить”.

Далее подтвердите удаление.

Следуйте инструкциям мастера. Программа полностью удалена с компьютера.

Как узнать от какого пользователя запущен процесс в Windows 10

Как вы знаете, Windows 10 — многопользовательская операционная система. Это означает, что каждый пользователь может одновременно с другими пользователями запускать приложения. В этой статье я покажу как узнать от какого пользователя запущен процесс в Windows 10.

В Windows 10 существует два способа узнать от какого пользователя запущен процесс: с помощью диспетчера задач и командной строки (CMD). Начнем по порядку.

Определяем пользователя от имени которого запущен процесс с помощью диспетчера задач

Чтобы найти, какой пользователь запустил процесс в Windows 10, выполните следующие действия:

  1. Откройте «Диспетчер задач».
  2. Нажмите «Подробнее», если «Диспетчер задач» появится без вкладок.
  3. Найдите необходимый процесс и правым кликом мышки на нем откройте контекстное меню, в котором нажмите на пункте «Подробно».
  4. После чего появиться вся информация касательно процесса. В том числе имя пользователя от которого он запущен.

Вы также можете посмотреть все запущенные процессы конкретного пользователя. Для этого перейдите на вкладку «Пользователи».

Определяем пользователя от имени которого запущен процесс с помощью командной строки

Теперь давайте посмотрим, как использовать командную строку для этой задачи.

    1. Откройте командную строку с правами администратора.
    2. Введите команду: Команда отобразит большой список всех запущенных процессов:

Вы также можете использовать команду с оператором «More», который будет отображать процессы поэтапно:

Список процессов можно сохранить в текстовый файл. Для этого используйте команду tasklist с оператором /V:

tasklist /V > %userprofile%\Desktop\tasks.txt

На этом все. Теперь вы знаете как узнать от какого пользователя запущен процесс / программа.

Вас может заинтересовать: Запрет запуска программы в Windows

Метод Thread.SleepThe Thread.Sleep method

Вызов метода Thread.Sleep приводит к немедленной блокировке текущего потока на определенное количество миллисекунд, переданное этому методу, вследствие чего остаток среза времени передается другому потоку.Calling the Thread.Sleep method causes the current thread to immediately block for the number of milliseconds or the time interval you pass to the method, and yields the remainder of its time slice to another thread. По истечении этого интервала времени спящий поток возобновляет выполнение.Once that interval elapses, the sleeping thread resumes execution.

Поток не может вызвать метод Thread.Sleep для другого потока.One thread cannot call Thread.Sleep on another thread. Статический метод Thread.Sleep всегда переводит текущий поток в спящий режим.Thread.Sleep is a static method that always causes the current thread to sleep.

Вызов метода Thread.Sleep с аргументом Timeout.Infinite переводит поток в спящий режим до того момента, пока он не будет прерван другим потоком путем вызова метода Thread.Interrupt или завершен путем вызова метода Thread.Abort.Calling Thread.Sleep with a value of Timeout.Infinite causes a thread to sleep until it is interrupted by another thread that calls the Thread.Interrupt method on the sleeping thread, or until it is terminated by a call to its Thread.Abort method. В следующем примере показаны оба метода прерывания спящего потока.The following example illustrates both methods of interrupting a sleeping thread.

Как включить компьютер удаленно по сети

Теоретически, после соответствующей конфигурации роутера можно включить компьютер через интернет.

Более конкретно, речь идет о перенаправлении пакета UDP из определенного порта для всех устройств, подключенных к сети.

Только на практике такое устройство допускает такие операции (IP-адрес xxx255 для сетей типа C).

Процесс выполняется путем отправки Magic Packet на ваш общедоступный IP-адрес и на соответствующий порт (как описано выше), который выключит компьютер.

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

ЗАКРЫТЬ ПРОЦЕСС ЧЕРЕЗ КОМАНДНУЮ СТРОКУ WINDOWS

В некоторых случаях «Диспетчер задач» при попытке принудительного завершения работы процесса может выдавать ошибку, связанную с отсутствием доступа. Если завершаемый процесс является системным, то подобная ошибка — нормальное явление. В остальных же случаях принудительно закрыть программу можно попробовать (способ не является действенным на 100%) при помощи командной строки Windows.

Первое, что нужно сделать — запустить командную строку от имени администратора. В случае с ОС Windows 10 здесь все просто:

  • Кликните правой кнопкой мыши по значку «Пуск» либо нажмите на клавиатуре комбинацию клавиш «Win + X».
  • В левом нижнем углу экрана отобразится меню, выберите в нем пункт «Командная строка (администратор)».

Другой способ запуска командной строки от имени администратора (сработает в любых версиях ОС Windows, начина с Vista):

  • Запустите «Проводник», затем откройте системный диск, в корне которого расположена папка «Windows» (обычно — «Локальный диск С:»).
  • Перейдите в папку «Windows», а оттуда — в папку «System32».
  • Найдите файл «cmd.exe» (может просто называться «cmd»).
  • Кликните по файлу правой кнопкой мыши, выберите из выпадающего контекстного меню пункт «Запуск от имени администратора».

Далее в окно командной строки впишите команду tasklist. Она выведет на экран список всех запущенных процессов:

Для принудительного завершения работы программы используется другая команда — taskkill. Для ее выполнения требуется знать имя файла или идентификационный номер процесса (PID), который можно получить из списка выше. Для примера применим команду taskkill к процессу «notepad.exe» по его идентификационному номеру (в нашем случае PID — 2280). Для этого в командную строку следует вписать команду: taskkill /pid 2280.

Об успешности завершения процесса будет свидетельствовать сообщение об успехе:

11

Циклы

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

int main()
{
// Делаем A
// B делается в цикле 0 или больше раз
// Делаем C
}

1
2
3
4
5
6

intmain()

{

// Делаем A

// B делается в цикле 0 или больше раз

// Делаем C

}

Эта программа может выполняться как , , , или даже . Опять же, она больше не является линейной, её порядок выполнения зависит от того, сколько раз выполнится цикл (если вообще выполнится).

В языке C++ есть 4 типа циклов:

   цикл while;

   цикл do while;

   цикл for;

   цикл foreach (добавили в C++11).

Мы подробно рассмотрим каждый из них в этой главе, кроме foreach (о нем немного позже).

Как сделать bat файл

Bat файл – алгоритм, который может написать пользователь в утилите CMD. Касаемо нашей темы, — возможно, произвести удаление папки с помощью команды bat файла, вписав последовательность шагов. Инструкция по созданию БАТ файла:

Шаг 1. Создаем простой документ в Блокноте.

Щелкаем правой кнопкой мышки по пустому месту рабочего стола, наводим курсор по пункту «Создать», выбираем «Текстовый документ»

Шаг 2. Можно поставить несколько пробелов или какой-то простой текст. Делается это для того, чтобы файл сохранился программой (главное – чтобы он не был пустым). Сейчас это не играет большой роли, поскольку для создания БАТ файла мы задействуем утилиту Notepad++.

Открываем новый документ, что-нибудь в него вводим, нажимаем «Файл», затем «Сохранить» и закрываем его

Шаг 3. Скачиваем Notepad. Устанавливаем.

Находим Notepad и переходим на сайт разработчикаВ разделе «download» выбираем программу под параметры своей системы и нажимаем «Download», далее устанавливаем программу, следуя инструкции установщика

Шаг 4. Открываем наш документ.

В утилите Notepad, щелкаем по вкладке «Файл», нажимаем на пункт «Открыть»

Шаг 5. В меню выбираем «Кодировки» -> «Кириллица» -> «OEM 866».

Переходим в закладку «Кодировки», далее наводим курсор на пункт «Кодировки», далее «Кириллица», затем щелкаем по пункту «OEM 866»

Шаг 6. Переходим в закладку «Файл», выбираем «Сохранить как». Подтверждаем действие и делаем замену старого файла на новый.

Переходим в закладку «Файл», выбираем «Сохранить как»Нажимаем «Сохранить»Нажимаем «Да»

Шаг 7. Теперь уже можно удалить старое содержимое файла и вбить нужный алгоритм.

Открываем сохраненный файл, меняем текст на нужный скрипт или алгоритм

Шаг 8. Сохраняем документ и меняем расширение с txt на bat.

Открываем «Файл», выбираем «Сохранить как»Меняем имя файла, расширение вместо .txt меняем на .bat, в поле «Тип файла» выбираем «Все файлы», нажимаем «Сохранить»

Готово!

Созданный bat.файл

Закрыть программу

Вам остаётся только отыскать в появившемся перечне программу, создающую проблемы, и запомнить её PID (цифровой идентификатор). Чтобы было более понятно, рассмотрим пример. Я запущу в Windows 10 приложение для проведения видеоконференций, найду Zoom в перечне процессов через командную строку и покажу, как его завершить.

Кроме имени программы, вы увидите несколько столбиков значений. Соседний с названием столбец (цифры) — это PID (идентификатор), а последний – количество килобайт, которое он, работая, отнимает у системы.

В моём случае Zoom обозначился двумя процессами, завершение которых из командной строки возможно и по отдельности, и одновременно посредством команды taskkill. Кроме самой команды, понадобится ещё ввести ключ /f, а также:

  1. Атрибут IM, если мы будем использовать имя программы, тогда завершатся оба процесса. Вот как это выглядит в данном примере: taskkill /f /IM Zoom.exe (после ввода команды нужно нажать Enter).

  1. Атрибут PID, если мы будем вводить не имя, а идентификатор, чтобы убить один конкретный процесс: taskkill /f /PID.

Если вы не знаете, что именно тормозит вашу систему, то можете попробовать с помощью командной строки завершить все процессы и закрыть все окна, которые зависли. Для этого используйте атрибут /fi (установка фильтра) и статус «не отвечает». Команда будет выглядеть так: taskkill /f /fi «status eq not responding».

Функция exitexit function

Функция, объявленная в <stdlib.h> , завершает программу на C++.The function, declared in <stdlib.h>, terminates a C++ program. Значение, передаваемое в качестве аргумента, возвращается операционной системе в качестве кода возврата программы или кода выхода.The value supplied as an argument to is returned to the operating system as the program’s return code or exit code. Принято, чтобы нулевым кодом возврата обозначалось, что программа завершена успешно.By convention, a return code of zero means that the program completed successfully. Константы и , также определенные в, можно использовать <stdlib.h> для обозначения успеха или неудачи программы.You can use the constants and , also defined in <stdlib.h>, to indicate success or failure of your program.

Выдача инструкции из функции эквивалентна вызову функции с возвращаемым значением в качестве аргумента.Issuing a statement from the function is equivalent to calling the function with the return value as its argument.

Как удалить процесс Windows без Диспетчера?

Для того, чтобы удалить процесс, с которым не справляется система, существует хороший аналог без графического интерфейса. Это одна из ремонтных утилит в составе Windows под названием TaskKill. Для её запуска нам понадобится обработчик команд cmd с правами администратора.

Любой из процессов можно остановить, используя его имя из списка, отображаемых в Диспетчере с помощью этой утилитки. К слову, справка по TaskKill, вызываемая

taskkill /help

полностью русифицирована. Можете взглянуть. А мы приступим.

Удалить процесс какой-то конкретно можно командой

taskkill /IM имя_процесса

Например, если мы хотим удалить процесс Internet Explorer:

нажмите, чтобы увеличить

Однако при работе с браузерами и закрытии окна любого из них с множеством открытых вкладок, утилита либо запросит дополнительное разрешение пользователя через интерфейс самого браузера (если он завис, это бесполезное занятие) либо предупредит о принудительном закрытии программы:

Так что можно запомнить команду принудительного (аварийного) закрытия процесса. С помощью этой команды можно остановить зависший проводник Windows:

taskkill /F /IM explorer.exe

Привычный интерфейс пропадёт:

и тут же ввести его снова в работу:

start explorer.exe

Кто заметил – именно добавления флага /F и удаляет дополнительную информацию из окна консоли.

Так каждому процессу присвоен свой идентификатор (в каждой сессии Windows) он свой, удалить процесс можно не по имени, а по номеру. Представим, что Диспетчер заблокирован админом или вирусом. Найти PID процесса поможет та же консоль. Откройте второе окно и наберите команду:

tasklist

Всё на виду. Но теперь команда в терминале Windows принимает вид:

taskkill /PID номер_PID

Хитрости утилиты TaskKill

С помощью этой команды можно удалить процесс, не зная его в лицо. Флаг /FI позволяет убить процесс, пожирающий большое количество памяти. Например, записав в консоли:

taskkill /FI “memusage gt ХХХХ”

Вы остановите все процессы и приложения, которые потребляют более ХХХХ килобайт оперативной памяти. Смотрите:

Кстати, если наберёте команду, указав на принудительное закрытие /F и небольшой объём памяти, скажем, 9000, это приведёт к выключению Windows.

сама консоль при мне, если честно, никогда не зависала, но утилите TaskKill подвластно и это:

taskkill /FI cmd.exe

также одним из самых применяемых флагов команды

tskill /A

Например, если у вас завис документ Word, примените команды в таком виде: вам удасться удалить процесс, запущенный во всех текущих сессиях сеанса. Эта команда применяется на тот, случай, если выхотите, чтобы следы процесса исчезли из системы полностью:

tskill /A winword.exe

утилита работает и на удалённых машинах. Она, скажем, для браузера от Mozill-ы принимает такой вид:

taskkill /s IP_адрес /u домен\имя_пользователя /IM firefox.exe

Пока всё. Успехов.

Заключение

Используя операторы управления порядком выполнения программы, вы можете повлиять на поток выполнения программы центральным процессором, а также на то, из-за чего он может быть прерван. До этого момента функционал наших программ был очень ограничен. Теперь же с операторами управления порядком выполнения программ мы сможем осуществить огромное количество разных интересных вещей, например, отображение меню до тех пор, пока пользователь не сделает правильный выбор; вывод каждого числа между и , и много-много чего еще.

Как только вы разберетесь с этой темой, вы перейдете на новый, более качественный уровень. Больше вы не будете ограничены игрушечными программами или простенькими упражнениями — вы сможете писать полноценные программы. Вот именно здесь и начинается всё самое интересное.

Погнали!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector