Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Win API


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / WinAPI

Выпуск № 435
от 20.06.2007, 19:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 412, Экспертов: 43
В номере:Вопросов: 1, Ответов: 2


Вопрос № 91543: Здравствуйте уважаемые эксперты!!!У меня вопрос: как с помощью функций WIN API найти и закрыть окно другого процесса, т.е. указывается имя искомого окна?Заранее благодарна:)...

Вопрос № 91.543
Здравствуйте уважаемые эксперты!!!У меня вопрос: как с помощью функций WIN API найти и закрыть окно другого процесса, т.е. указывается имя искомого окна?Заранее благодарна:)
Отправлен: 15.06.2007, 19:27
Вопрос задала: Anomaly (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: PGM
Здравствуйте, Anomaly!

1. Найти - H := FindWindow(<класс окна>, <заголовок>) - что известно, то и используйте, если нашли H <> 0
2. Закрыть - корректно отрабатывается обычно PostMessage или SendMessage(H, WM_SYSCOMMAND, SC_CLOSE, 0), если не хочет закрываться, то можно и DestroyWindow, но это может вызвать ошибки в закрываемом приложении.
Ответ отправил: PGM (статус: 8-ой класс)
Ответ отправлен: 16.06.2007, 00:02
Оценка за ответ: 5

Отвечает: Korolyov Alexandr
Здравствуйте, Anomaly!

Есть такая функция FindWindow (ClassName, WindowName) - но по мимо имени окна нужно знать и название класса окна, да еще название окна может меняться во время исполнения.
Другой путь - EnumWindows (Enum_Proc: Процедура; LParam: LParam) : Boolean – перечисляет все окна в системе, функция обратного вызова.
С помощью этой функции можно перебрать все окна в системе (в приложении пример).

Приложение:

---------
Читайте help

Ответ отправил: Korolyov Alexandr (статус: 3-ий класс)
Ответ отправлен: 16.06.2007, 00:17
Оценка за ответ: 5


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

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

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Email: support@rusfaq.ru, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.52 от 02.05.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное