Форум: "Основная";
Текущий архив: 2003.02.13;
Скачать: [xml.tar.bz2];
ВнизОбработка исключений Найти похожие ветки
← →
Chubais (2003-02-03 14:00) [0]Уважаемые! Такой вопрос есть: как обрабатывать исключения, которые возникают в микрософтовских длл-ках? ;))) лежит на форме TWebBrowser, форма открывается, делается следующее:
try
WEBBROWSER1.Navigate("about:blank");
while WEBBROWSER1.ReadyState<>READYSTATE_COMPLETE do
Application.ProcessMessages;
except
end;
если закрыть форму, пока выполняются эти строчки, а это может занимать несколько секунд, то возникает исключение в SHLWAPI.DLL.
Которое не ловится и не должно (?) ловиться в try..except.
Вопрос: как это исключение задавить?
← →
Digitman (2003-02-03 14:12) [1]либо обрабатывай Application.OnException()
либо не допускай исключения, контролируя момент разрушения формы, которой принадлежит компонент WEBBROWSER1, дабы не обращаться к компоненту после его автоматического закрытия/разрушения
← →
Chubais (2003-02-03 14:49) [2]
> либо обрабатывай Application.OnException()
хотелось бы локально задавить ошибку...
> контролируя момент разрушения формы
запрещать юзеру закрыть форму пока не отработает SHLWAPI не хоцца...
← →
Digitman (2003-02-03 14:59) [3]
> запрещать юзеру закрыть форму пока не отработает SHLWAPI
> не хоцца...
Зачем запрещать-то ? Нехай закрывает, коль невтерпеж ему !)
Твоя задача - вовремя принять соотв.меры
Ошибкак какая возникает ? Конкретно - класс, текст и т.п. ?
← →
Chubais (2003-02-03 15:52) [4]Access violation at address 70C17CA8 in module "SHLWAPI.DLL". Read of address 00000018
вот такая вот))) по всей видимости, обращение к структуре порушенного браузера))
← →
Digitman (2003-02-03 16:39) [5]в деструкторе формы останови навигацию (см. метод Stop())
← →
Chubais (2003-02-03 18:47) [6]да стоит там вот такое, в OnClose:
if WebBrowser1.Busy
then begin
WebBrowser1.Stop;
...
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.02.13;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c