Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.04.2012, 20:19   #1
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию Правильно завершить чужое приложение.

Доброго времени суток!

Интересует вопрос, как правильно завершать чужие приложения, не прибегая к высшей мере наказания(Temnimate)?
Человек_Борща вне форума Ответить с цитированием
Старый 13.04.2012, 20:37   #2
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

Может sendmessage хотя я не разу так не делал=)
Кольша вне форума Ответить с цитированием
Старый 15.04.2012, 13:15   #3
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

если приложение не оконное, то никак
rpy3uH вне форума Ответить с цитированием
Старый 15.04.2012, 13:23   #4
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

как правильно завершать чужие приложения, не прибегая к высшей мере наказания(Temnimate)

найти все окна, послать им WM_QUIT, или CreateremothThread + ExitProcess
Rififi вне форума Ответить с цитированием
Старый 15.04.2012, 15:18   #5
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

Цитата:
Сообщение от Rififi Посмотреть сообщение
или CreateremothThread + ExitProcess
внезапный вызов ExitProcess это не нормальное завершение процесса
rpy3uH вне форума Ответить с цитированием
Старый 15.04.2012, 15:58   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Человек_Борща
А что за приложение то?

P.S. А вообще Винда действительно не умеет нормально завершать приложения без 100% потерь. Даже когда винду завершаешь она не всегда соизволяет посылать службам команду остановки (или точнее не во всех условиях дожидается от служб ответа), так что не имеет значения как ты прогу завершаешь - все равно не 100% корректно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.04.2012, 00:31   #7
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Сейчас, я завершаю любую прогу на 100500% не корректно, банально открыв процесс и пихнув туда флаг PROCESS_TERMINATE.

С консолью понятно, я же не все проги мониторю. Я отккрываю пайпы консоли и толкаю туда команду заданную юзером для этой проги, далее жду пока прога отвалится тихо и спокойно. Как же быть с оконными?

Как получить окна процесса, зная идентификатор процесса?
По факту, процессы пускаю через CreateProcess, какие у меня есть возможности над созданным процессом?
Человек_Борща вне форума Ответить с цитированием
Старый 18.04.2012, 00:39   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

EnumThreadWindows
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 18.04.2012, 08:14   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Как же быть с оконными?
Вопрос в лоб - твои оконки коректно завершаются в нормальных условиях?
Ато есть ведь такое (типа DExplorer) которую и завершением работы не высадишь.
Если корректно то просто послать их на WM_Destroy или типа того сообщения.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.04.2012, 09:57   #10
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
Вопрос в лоб - твои оконки коректно завершаются в нормальных условиях?
Угу. Написал обработчик сообщения выхода из системы и все.

Цитата:
Ато есть ведь такое (типа DExplorer) которую и завершением работы не высадишь.
Редкостная гадость :/ и яркий пример того, как хорошо умеют писать программы мелкомягкие. Это ведь их новоиспеченной просмоторщик файлов-справки от 2010 и VS и C++ Builder и ущё овер90000 программ исп. HTMLHelp2(ну вроде оно).


Вечно приходится его руками гасить, если залез в справку от XE2.
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чужое приложение Assemblerru Win Api 30 18.08.2010 22:23
Чужое приложение [Опера] auffasst Общие вопросы Delphi 3 27.06.2010 17:53
Закрыть чужое приложение Михаил Юрьевич Общие вопросы Delphi 3 28.03.2009 21:26
чужое приложение Electrod Win Api 12 27.01.2008 17:04
Как активировать чужое приложение Hintman Win Api 3 30.04.2007 16:24