![]() |
|
|
![]()
|
|
| SeregaLBN |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 178 Регистрация: 3.10.2003 Где: Киев Репутация: нет Всего: нет |
В немодальном диалогов окне размещён WebBrowser. Это окно надо уничтожать сразу при его закрытии. Это я делаю так:
Это всё работает. Но мне также надо анализировать содержимое загруженой страницы, что я начинаю делать сразу после загрузки страницы в обработчике браузера DocumentComplete. Ели содержимое страницы меня неустроит, то я должен уничтожить диалог. Что я делаю снова же вызовом DestroyWindow():
Ну вот после такого кода, у меня и вылетает прога с "Unhandled exception in TestWBDestroy.exe (SHLWAPI.DLL): 0xC0000005: Access Violation.". Поэтому поводу, собственно, и вопрос. Что я не так делаю? И, когда можно уничтожать этот диалог? |
||||
|
|||||
| Coocky |
|
|||
![]() GUI гуру ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2879 Регистрация: 16.2.2004 Где: Украина. Запорожь е Репутация: 25 Всего: 62 |
SeregaLBN
Господи.. Ну сам бы уже потренировался.. Попробуй в DownLoadComplete Поставь все сообщения, которые говорят об окончании чего либо. Раставь там точки прерывания. Пройдись в отладке и глянь ,какое сообщение последнее. Там и уничтожай окно -------------------- Верю в смерть после жизни, в любовь после секса ,в крем после бритья |
|||
|
||||
| SeregaLBN |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 178 Регистрация: 3.10.2003 Где: Киев Репутация: нет Всего: нет |
Я тренировался, перед тем как задать вопрос. Можешь несомневаться...
Вот TRACE загрузки локального файла:
Как видно, последним из Complet'ов, и есть как раз DocumentComplete. Попытка закрыть диалог при самом последнем уведомлении от браузера:
приводят к аналогичному результату. |
||||
|
|||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Пошли диалогу сообщение WM_CLOSE, причем асинхронно (PostMessage).
-------------------- ... |
|||
|
||||
| SeregaLBN |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 178 Регистрация: 3.10.2003 Где: Киев Репутация: нет Всего: нет |
Спасибо, Earnest.
Так как WM_CLOSE не уничтожает немодальный диалог, то я сделать чуть по-другому:
Так вроде всё работает - и диалого уничтожается, и нет exeption'ов. Интересно что если сделать так - сразу вызвать ассинхронно WM_DESTROY:
то у меня диалог не уничтожался, в вот окно браузера в диалоге - уничтожалось... |
||||
|
|||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |