Страница: 1 |
Страница: 1 |
Вопрос: Снова про исключения
Добавлено: 16.08.06 13:48
Автор вопроса: LamerOnLine | ICQ: 334781088
Не знаю кого как, а меня уже эти GPF в VB достали. В сях все гораздо проще - _set_se_translator & no problem. Пытаюсь заюзать эту фичу под VB, вызывая сяшную dll, но VBшные GPF все равно не хендлятся. Библа и екзек находятся в одном потоке.
Ну скажите мне - чего им не хватает?
ЗЫ Если забубенить на C++ Launcher с хендлером - будут ли хендлица ошибки VBшных dll (в том же потоке)?
Ответы
Всего ответов: 13
Номер ответа: 1
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #1
Добавлено: 16.08.06 13:58
По русски пжлст))))))
Номер ответа: 2
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #2
Добавлено: 16.08.06 15:22
Да, и в догонку - как определить адрес для продолжения в EXCEPTION_POINTERS для UnhandledExceptionFilter с RetVal EXCEPTION_CONTINUE_EXECUTION. Продолжать выполнение с команды, вызвавшей исключение, смысла нет.
Номер ответа: 3
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #3
Добавлено: 16.08.06 18:19
?
Номер ответа: 4
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #4
Добавлено: 16.08.06 18:20
Всмысле што делаем, как делаем
Номер ответа: 5
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #5
Добавлено: 16.08.06 19:04
Да вроде сделал уже. Только вот трабла с резюмированием после исключения. Если в VB все прокатывает (кривой CopyMemory, битая ссылка и т.п.), то при GPF, выкидываемом каким-либо левым контролом, продолжить работу как правило не удается. Можно, конечно, возвращаться на некие заданные брекпоинты, но галимаэтооднако. Впрочем, думается, большего не добиться...
Номер ответа: 6
Автор ответа:
ArtBase
ICQ: 55593017
Вопросов: 23
Ответов: 76
Профиль | | #6
Добавлено: 17.08.06 04:14
ацкий рэп)))
Номер ответа: 7
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #7
Добавлено: 17.08.06 11:11
Гы Всем спасибо за помощь )
Зы Проблема остается открытой.
Зыы Как вариант - пробовать извлекать адрес вызвавшей процедуры из стека и выставлять, соответственно, Eip, затем пытаться продолжить выполнение. Или есть другие идеи?
Номер ответа: 8
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #8
Добавлено: 17.08.06 16:50
И туда же - есть у кого нормальный пример раскрутки фреймов стека для получения адреса возврата. RtlUnwind не предлагать.
И еще, товарищи - активнее! Хватит спать на форуме
Номер ответа: 9
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #9
Добавлено: 17.08.06 18:13
RtlUnwindEx?
Номер ответа: 10
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #10
Добавлено: 18.08.06 11:14
Бууууааагагага...
Так, кстати - а по делу ответы будут? Ну ведь кто-то уже этим занимался!
(Черт, надо было спросить че-нить про TextBox)
ЗЫ Юбилейный, 2000-й ответ Осталось задать три вопроса - и их тоже будет 100 )
Номер ответа: 11
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #11
Добавлено: 18.08.06 22:04
Не думаю, что кто-то здесь занимался разборками с VBшной обработкой ошибок и ее связью с SEH, думаю, это надо либо на васме спрашивать, либо самому копать.
Номер ответа: 12
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #12
Добавлено: 22.08.06 11:01
Странно. Впрочем, надежные программы нынче не в моде - для них приходится писать мало патчей.
Номер ответа: 13
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #13
Добавлено: 22.08.06 12:06
Скорее, VB6 нынче не в моде