Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
Wanee
54 / 54 / 13
Регистрация: 02.02.2011
Сообщений: 430
#1

Закрытие программ - C++

08.07.2012, 14:18. Просмотров 1375. Ответов 8
Метки нет (Все метки)

Как написать консольную программку, которая бы закрывала все запущенные программы?
Допустим открыть у меня Word, блаузер какой нибудь. Я запустил свою программку, и она все закрыла Word и блаузер. Как это сделать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2012, 14:18     Закрытие программ
Посмотрите здесь:

закрытие консоли - C++
задание:Создать класс матрица Данный класс содержит указатель на float, размер строк и столбцов и состояние ошибки. Определить конструктор...

закрытие цикла - C++
#include<stdio.h> #include<iostream> int samArray(int integerArray,int sizeOfLoadArray); void displayArray(int integerArray,int...

Открытие,закрытие { } - C++
Ребятки кто может рассказать как правильно определить,где нужно открывать массив{ и закрывать его} Буду очень признателен если дадите...

Закрытие потока - C++
Всем привет! Знает ли кто-нибудь есть ли в С++ "метод закрытия потока" (с) os.close()? Не могу найти, да и в программе компилятор не...

закрытие программы - C++
Здравствуйте господа програмисты!у меня такой вопрос-допустим известно что открыта какая то программа,могу ли я её програмно закрыть если...

закрытие консоли - C++
в чем допущена оплошность:требуется ввести размер матрицы,вводим допустим 5,происходит вывод на экран,далее следует выбор: удалить одну...

Закрытие Windows окна - C++
#include "main.h" HWND hWnd; LRESULT __stdcall WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam); int __stdcall...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,921
Записей в блоге: 1
08.07.2012, 15:05     Закрытие программ #2
Это делать надо на WinApi.
Catstail
Модератор
22515 / 10920 / 1774
Регистрация: 12.02.2012
Сообщений: 18,067
08.07.2012, 15:09     Закрытие программ #3
Не обязательно. Есть утилитка taskkill. Ее можно запустить в скрытом окне.
Wanee
54 / 54 / 13
Регистрация: 02.02.2011
Сообщений: 430
08.07.2012, 16:40  [ТС]     Закрытие программ #4
Catstail, можете привести простой пример как использовать эту утилиту в С++.
-=ЮрА=-
Заблокирован
Автор FAQ
08.07.2012, 23:10     Закрытие программ #5
Цитата Сообщение от Wanee Посмотреть сообщение
можете привести простой пример как использовать эту утилиту в С++.
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <windows.h>
#include <iostream>
using namespace std;
 
int main()
{
    int PID;cin>>PID;
    char sMSG[256] = {0};
    sprintf(sMSG,"taskkill /f /im %d",PID);//"taskkill /f /im Интересующий нас PID процесса"
    system(sMSG);//Убиваем процесс с идентификатором PID
    return 0;
}
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
08.07.2012, 23:12     Закрытие программ #6
по логике вещей надо найти процесс explorer.exe и убить все его дочерние процессы
-=ЮрА=-
Заблокирован
Автор FAQ
08.07.2012, 23:17     Закрытие программ #7
А вот краткий мануал по taskkill
taskkill /? (справка короче)
TASKKILL [/S <система> [/U <пользователь> [/P [<пароль>]]]]
{ [/FI <фильтр>] [/PID <процесс> | /IM <образ>] } [/F] [/T]

Описание:
Эта команда позволяет завершить один или несколько процессов.
Процесс может быть завершен по имени образа или по идентификатору процесса.

Список параметров:
/S <система> Подключаемый удаленный компьютер.

/U [<домен>\]<пользователь> Пользовательский контекст, в котором
должна выполняться эта команда.

/P <пароль> Пароль для этого пользовательского контекста.

Запрашивает пароль, если он не задан.

/F Принудительное завершение процесса


/FI <фильтр> Отображение задач, отвечающих
указанному в фильтре критерию.

/PID <процесс> Идентификатор процесса, который требуется
завершить.

/IM <образ> Имя образа процесса, который требуется
завершить. Для указания всех процессов
можно использовать символ шаблона '*'.

/T Завершение указанного процесса
и всех его дочерних процессов.

/? Вывод справки по использованию.

Фильтры:
Имя фильтра Допустимые операторы Допустимые значения
----------- -------------------- -------------------
STATUS eq, ne RUNNING | NOT RESPONDING
IMAGENAME eq, ne Имя образа
PID eq, ne, gt, lt, ge, le Значение PID
SESSION eq, ne, gt, lt, ge, le Номер сессии
CPUTIME eq, ne, gt, lt, ge, le Время CPU в формате
hh:mm:ss.
hh - часы,
mm - минуты, ss - секунды
MEMUSAGE eq, ne, gt, lt, ge, le Использование памяти в КБ
USERNAME eq, ne Имя пользователя в формате
[<домен>\]<пользователь>
MODULES eq, ne Имя DLL
SERVICES eq, ne Имя службы
WINDOWTITLE eq, ne Заголовок окна

Примечание: Символ '*' для параметра /IM применим только совместно с фильтрами.

Примечание: Завершение удаленных процессов всегда будет принудительным,
независимо от того, был ли использован параметр /F или нет.

Примеры:
TASKKILL /S <система> /F /IM notepad.exe /T
TASKKILL /PID 1230 /PID 1241 /PID 1253 /T
TASKKILL /F /IM notepad.exe /IM mspaint.exe
TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*"
TASKKILL /F /FI "USERNAME eq NT AUTHORITY\SYSTEM" /IM notepad.exe
TASKKILL /S <система> /U <домен>\<пользователь> /FI "USERNAME ne NT*" /IM *
TASKKILL /S <система> /U <пользователь> /P <пароль> /FI "IMAGENAME eq note*"


Добавлено через 2 минуты

Не по теме:

Цитата Сообщение от alex_x_x Посмотреть сообщение
по логике вещей надо найти процесс explorer.exe и убить все его дочерние процессы
не соглашусь, поясню: если скажем броузер к примеру хром, он как по мне никак не дочерний проц explorer.exe
PS:Поздравления по поводу смены авы=)

defer
秘密
555 / 235 / 3
Регистрация: 29.11.2010
Сообщений: 783
08.07.2012, 23:23     Закрытие программ #8
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
он как по мне никак не дочерний проц explorer.exe
лучше не гадать,а взять программу вроде ProcessExplorer и посмотреть

chrome не дочерний
firefox дочерний
punto switcher не дочерний и т.д.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.07.2012, 23:34     Закрытие программ
Еще ссылки по теме:

мгновенное закрытие окна - C++
есть код программы, но после выполнения окошко сразу закрывается, и не могу это исправить. помогите пожалуйста( #include...

Открытие и Закрытие дисковода. - C++
Вот такой у меня код #pragma comment(lib,&quot;winmm.lib&quot;) #include &lt;iostream&gt; #include &lt;mmsystem.h&gt; using namespace std; int main () ...

Открытие и закрытие файлов - C++
Доброго времени суток! Подскажите пожалуйста: если файл открыть функций fopen , записать тута что-то и при закрытии функцией fclose,...

Принудительное закрытие консоли - C++
Доброго времени суток! У меня такой вопрос, мне нужно после выполнения определенного условия программа закрывалась, exit(0) не дает нужного...

Открытие/закрытие CD-ROM - C++
при нажатии 1 открывается привод, а как сделать, чтобы программа не заканчивала после этого работу, а можно было продолжить работу, нажав...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
08.07.2012, 23:34     Закрытие программ #9
запустил PE под wine'ом - действительно порождаются они не от explorer'а
странно, почему-то раньше всегда так считал

ну значит перебирать все видимые окна

Не по теме:

Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
PS:Поздравления по поводу смены авы=)
это вроде не праздник, но все равно спасибо)

Yandex
Объявления
08.07.2012, 23:34     Закрытие программ
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru