Здравствуйте! Не так давно столкнулся с некоторыми задачами на которые не знаю ответа, поэтому прошу помощи:
1. имеется программа (сидит в углу экрана поверх всех окон), которая запускает остальные программы по нажатию кнопки (не вирус, просто требуется постоянно открывать калькулятор, ексель, б2б и др. программы). всё это сделать было не трудно, но вот одна опция осталась не реализованной (в которой как раз таки нуждаюсь): при нажатии клавиши "закрыть всё", программа закрывает все приложения, открытые этой программой
2. если программа работает, то она блокирует браузер ехплорер (при запуске одной не лицензированной программы постоянно открывается ехплорер со страницей покупки лицензии).
Помогите пожалуйста это сделать. Заранее спасибо!
Этот топик читают: Гость
Этот топик был перемещен из раздела "Помощь по среде"
Ответов: 5
Рейтинг: 0
|
|||
карма: 0 |
|
Ответов: 4629
Рейтинг: 749
|
|||
У компонента WinExec есть точка ProcessID. После каждого запуска программы добавляешь её ProcessID в список. Для закрытия программы пробегаешься по списку и закрываешь с помощью компонента EnumProcess. Только такой способ закрытия не очень корректный, можно пробовать для каждого процесса искать главное окно (или все) и посылать им команду закрытия.
Редактировалось 1 раз(а), последний 2017-12-29 12:04:46 |
|||
карма: 26 |
|
Ответов: 321
Рейтинг: 10
|
|||
Можно использовать .bat файл как вариант, в принципе аналогично варианту выше.
Создаем файл расширения .bat, например killAll.bat, отрываем блокнотом, пишем в нем процессы, которые надо убить : taskkill /f calc.exe taskkill /f iexplorer.exe ... и т.д. Сохраняем, закрываем. При нажатии клавиши "закрыть всё" просто исполнить этот батник. Подробнее о taskkill можно почитать здесь - http://cmd4win.ru/administrirovanie-computera/systemnoye-administrorovanie/27-taskkill Редактировалось 1 раз(а), последний 2017-12-28 20:57:42 |
|||
карма: 1 |
|
Ответов: 5
Рейтинг: 0
|
|||
Netspirit, Master4eG, огромное спасибо!
Вы очень мне помогли! |
|||
карма: 0 |
|
4