Модераторы: Akina

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отловить событие закрытие программы, Не кнопкой а диспетчером задач 
:(
    Опции темы
eldar22
Дата 27.5.2009, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 22.9.2008

Репутация: нет
Всего: 1



Так вот когда запускаешь программу,  а потом её закрываешь не кнопкой, а диспетчером задач
Вот как такое событие отловить?
PM MAIL WWW   Вверх
Rrader
  Дата 27.5.2009, 18:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Inspired =)
***


Профиль
Группа: Экс. модератор
Сообщений: 1535
Регистрация: 7.5.2005

Репутация: 6
Всего: 191



Из сторонней программы\драйвера.


--------------------
Let's do this quickly!
Rest in peace, Vit!
PM MAIL Skype   Вверх
eldar22
Дата 27.5.2009, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 22.9.2008

Репутация: нет
Всего: 1



Нт наверное меня не поняли вот у меня есть моя программа
Когда я её запустил на 5 минут допустим, а потом я её хочу закрыть через диспетчер задач и если программа  закрылась через диспетчер задач то она посылает post запрос
PM MAIL WWW   Вверх
amt
Дата 27.5.2009, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 26.10.2004
Где: г. Волгоград

Репутация: 3
Всего: 3



Событие Query Unload
Более практичным, чем Unload, является событие QueryUnload.
Наряду с параметром Cancel в процедуру обработки события передается
и параметр UnloadkMode, указывающий причину возникновения
события.
 Параметры OnloadMode в QueryUnload
Константа                  Значение      Причина возникновения события
vbFormControlMenu        0                Пользователь закрыл приложение посредством
                                                          [Alt+F4], кнопки Close (Закрыть) окна или
                                                         одноименной команды системного меню
vbFormCode                    1                В коде выполняется команда Unload
vbAppWindows                2                Завершение сеанса Windows
vbAppTaskManager         3                Выход из приложения с помощью менеджера задач
vbFormMDIForm              4                 Дочерняя форма MDI закрыта, так как закрыта
                                                          вышестоящая форма MDI


--------------------
С точки зрения банальной эрудиции не каждый индивидуум способен игнорировать тенденции парадоксальных эмоций.
PM MAIL   Вверх
Akina
Дата 27.5.2009, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 453



Однако при "жёсткой" выгрузке приложение вообще никакого сообщения не получит - только пинок коленом под зад... впрочем, под Виндами такую выгрузку сделать не так уж и просто - все штатные или околоштатные средства сначала пытаются решить дело миром, и только если "Приложение не отвечает" - тогда извини...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Прибой94
Дата 27.5.2009, 18:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 27.5.2009
Где: Зеленоград.

Репутация: нет
Всего: нет



Я пользуюсь функцией Form.Unload.
Работало даже при закрытии при помощи Диспетчера.

PS: Делал незакрывающиеся программы smile 
PM MAIL   Вверх
eldar22
Дата 27.5.2009, 19:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 22.9.2008

Репутация: нет
Всего: 1



Код

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If UnloadMode = vbAppTaskManager Then
Dim strURL As String
Dim strHeader As String

strHeader = "Host: www.сайт.ru" & vbNewLine & _
            "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MRSPUTNIK 2, 0, 1, 90 SW; MRA 5.4 (build 02620); .NET CLR 2.0.50727; Dealio Toolbar 3.4; InfoPath.1)" & vbNewLine & _
            "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" & vbNewLine & _
            "Accept-Language: ru,en-us;q=0.7,en;q=0.3" & vbNewLine & _
            "Accept-Encoding: gzip,deflate" & vbNewLine & _
            "Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7" & vbNewLine & _
            "Keep-Alive: 300" & vbNewLine & _
             "Referer: http://www.сайт.ru/index2.php" & vbNewLine & _
             "Content-Type: application/x-www-form-urlencoded" & vbNewLine & _
            "Connection: keep-alive" & vbNewLine




strURL = "http://www.сайт.ru/del.php?login=" + login.Text
Inet2.Execute strURL, "GET", strHeader
Cancel = True
End If
End Sub


Ну чё то все равно не отправляет
В чём проблема?
PM MAIL WWW   Вверх
Akina
Дата 27.5.2009, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 453



Цитата(eldar22 @  27.5.2009,  20:02 Найти цитируемый пост)
все равно не отправляет

ТО есть Вы хотите сказать, что тот же код, но размещённый, скажем, в Button_Click, отправляет?


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
eldar22
Дата 27.5.2009, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 22.9.2008

Репутация: нет
Всего: 1



Нет я хочу сказать когда я закрываю программу с помощью диспетчера задач то программа не отправляет post запрос

PM MAIL WWW   Вверх
Akina
Дата 27.5.2009, 21:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 453



Ничего не понимаю... а нахрена тогда был приведён код выше?


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
eldar22
Дата 27.5.2009, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 22.9.2008

Репутация: нет
Всего: 1



Код был приведён чтобы разобраться 
Попробую объяснить на пальцах  smile 
1 есть программа
2 запускаешь её
3 жмёшь ctrl+alt+delete
4 ищешь процесс  программы 
5 завершаешь процесс программы
6 программы посылает post запрос
ВсЁ smile 
PM MAIL WWW   Вверх
Akina
Дата 27.5.2009, 22:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 453



Так. И где твой код, который должен выполнять пускт 6, но не выполняет? тольько не говори, что ты его привёл выше - это заведомо не так.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
eldar22
Дата 27.5.2009, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 22.9.2008

Репутация: нет
Всего: 1



Akina тогда скажи как сделать то что я хочу ?
PM MAIL WWW   Вверх
I_Am_Rock
Дата 29.5.2009, 11:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 523
Регистрация: 18.1.2008

Репутация: 12
Всего: 15



Цитата(Akina @  27.5.2009,  20:42 Найти цитируемый пост)
ТО есть Вы хотите сказать, что тот же код, но размещённый, скажем, в Button_Click, отправляет?


Цитата(eldar22 @  27.5.2009,  21:11 Найти цитируемый пост)
Нет я хочу сказать когда я закрываю программу с помощью диспетчера задач то программа не отправляет post запрос


Мне кажется Akina имеет ввиду, что вам нужно сначала убедиться, что код вообще работает.
PM MAIL WWW   Вверх
neic
Дата 29.5.2009, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 839
Регистрация: 28.1.2007

Репутация: нет
Всего: 7



Цитата(Akina @  27.5.2009,  22:10 Найти цитируемый пост)
Так. И где твой код, который должен выполнять пускт 6, но не выполняет? тольько не говори, что ты его привёл выше - это заведомо не так. 

Ну не POST, а GET...чё придераешся? =)

I_Am_Rock
Правильно думаешь =)
PM MAIL WWW ICQ Skype   Вверх
eldar22
Дата 29.5.2009, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 22.9.2008

Репутация: нет
Всего: 1



Код будет работать когда в диспетчере завершаешь работу программы он не работает когда завершаешь процесс программы
PM MAIL WWW   Вверх
Kardinalli
Дата 13.6.2015, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 3.4.2009

Репутация: нет
Всего: нет



Подниму старую тему, с вашего позволения.

Так как все же можно отследить принудительное завершение процесса самой завершаемой программой?

Суть: есть программа (лоадер), которая запускает дочернюю программу. При закрывании дочерней программы, лоадер тоже заканчивает работу. Если закрыть лоадер, так же закрывается дочерняя. Но если процесс лоадера закрыть принудительно, через диспетчер, то дочерняя программа остается работать.
Никакие события (QueryUnload, Unoad, Terminate) при этом не отрабатывают.

Как все же отловить сие?
PM MAIL   Вверх
Akina
Дата 15.6.2015, 00:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 453



Kardinalli, самое дубовое - наладить между ними обмен сигналами "я ещё живой"...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Kardinalli
Дата 16.6.2015, 18:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 3.4.2009

Репутация: нет
Всего: нет



Если бы ОБЕ софтины писал я, то без проблем, взаимный мониторинг и дело в шляпе. Но запускаемая программа - сторонняя, без признаков исходников, к тому же на дельфи. Так что, фиг она будет следить за мамой...  smile 
PM MAIL   Вверх
Akina
Дата 16.6.2015, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 453



Kardinalli, ну хотя бы одна из них - твоя? если нет - придётся писАть третью. Программу-монитор.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.1761 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.