IE открывает новое окно в потоке.......
От: d.e.a.d  
Дата: 06.08.04 20:52
Оценка:
Привет всем.

Столкнулся с проблемой при написании BHO к IE.
Я хочу управлять всеми BHO, которые были подгружены IE. Для ентого я написал еще один COM-сервер(out-process), который является singleton`ом.
Таким образом, все BHO, обращаются к одному и тому же экземпляру управляющего сервера.

Все хорошо, только если в запущенном IE не открывать новое окно. Если оно каким нить образом откроется, например, File->Open->New Window, то получается следующее:

так как новое окно(New) создается в потоке, который в свою очередь создается IE(Old). таким образом имеем два окна в одном процессе и один BHO для них.
загвоздка в том, что функции singletona вызывает только новое окно(New), а IE(Old), тот, что открыл новое окно, эти функции не вызывает(точнее функции возвращают не те значения, которые я в них заложил, а именно E_INVALIDARG). вот. Как смог объяснил.

Посоветуйте плиз, что не так, то есть почему функции singleton`а не вызываются, скажем так, старым окном?

Заранее спасибо.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.