Здравствуйте, Dalek, Вы писали:
D>Возникает странная и мною не объяснимая ошибка при закрытии странички с моим компонетном в IE D>IE выдаёт что-то вроде "Microsoft Internet Explorer has encountered a problem and needs to close. We are sorry for the inconvenience." и умирает. D>Компонент многопоточный и работает с Connection Point. D>Если кто сталкивался с таким глюком, помогите. D>Заранее признателен
Вот они прелести InProc серверов.
Скорее всего что-то неладится у тебя, а поскольку твой компонет подгружен в процесс IE, падает IE.
Запусти IE под отладчиком с отладочной версией своего компонента и посмотри в каком месте падает.
\/\/i||i
Re[3]: Ошибка при закрытии странички с моим компонетном в IE
Здравствуйте, Dalek, Вы писали:
D>Последовал вашему совету. Всё намного хуже... D>Никаких исключений во время закрытия компонента не происходит, т.е. деструктор проходит нормально от начала и до конца. А затем Unhelded Exception с кодом 5. D>Причём в том случае, если контейнером является VB, никаких багов нет
Проблемы могут быть глубже. Например у тебя некорректно считаются ссылки на твой компонент и он удаляется несмотря на то что IE все еще держит на него ссылку. В конце концов IE пытается вызвать Release у интерфейса твоего объекта, а объекта уже нет. Учитывая, что ты используешь Connection Point, это весьма вероятно, хотя и не обязательно. Ловить такие баги весьма не просто. Как говорит мой шеф, лучше средство отладки внимательное и вдумчивое чтение когда. Можно попробовать написать небольшой пример, на котором подобная проблема воспроизводится, и вынести его код на обсуждение.
\/\/i||i
Ошибка при закрытии странички с моим компонетном в IE
Возникает странная и мною не объяснимая ошибка при закрытии странички с моим компонетном в IE
IE выдаёт что-то вроде "Microsoft Internet Explorer has encountered a problem and needs to close. We are sorry for the inconvenience." и умирает.
Компонент многопоточный и работает с Connection Point.
Если кто сталкивался с таким глюком, помогите.
Заранее признателен
Re: Ошибка при закрытии странички с моим компонетном в IE
Здравствуйте, Willi, Вы писали:
W>Здравствуйте, Dalek, Вы писали:
D>>Возникает странная и мною не объяснимая ошибка при закрытии странички с моим компонетном в IE D>>IE выдаёт что-то вроде "Microsoft Internet Explorer has encountered a problem and needs to close. We are sorry for the inconvenience." и умирает. D>>Компонент многопоточный и работает с Connection Point. D>>Если кто сталкивался с таким глюком, помогите. D>>Заранее признателен
W>Вот они прелести InProc серверов. W>Скорее всего что-то неладится у тебя, а поскольку твой компонет подгружен в процесс IE, падает IE. W>Запусти IE под отладчиком с отладочной версией своего компонента и посмотри в каком месте падает.
Последовал вашему совету. Всё намного хуже...
Никаких исключений во время закрытия компонента не происходит, т.е. деструктор проходит нормально от начала и до конца. А затем Unhelded Exception с кодом 5.
Причём в том случае, если контейнером является VB, никаких багов нет
Re[2]: Ошибка при закрытии странички с моим компонетном в IE
Access Denied. Скорее всего, обращение в область памяти, к которой лучше не обращаться. Версия с неверным подсчётом ссылок очень похожа на правду, у меня было нечно похожее, правда без IE, но с таким же печальным результатом.