Привет Олл! Расскажите мне плиз какие ньюансы следует учитывать при
внедрении AX элемента на странице? Вплане что нужно учесть чтоб не было
проблем с криками браузера "Безопасность андер-аттак" ? :)
ps:
Элемент собственного "склепа" в BCB++ 5.0
Здравствуйте qgrabber, Вы писали:
Q>Привет Олл! Расскажите мне плиз какие ньюансы следует учитывать при Q>внедрении AX элемента на странице? Вплане что нужно учесть чтоб не было Q>проблем с криками браузера "Безопасность андер-аттак" ? :) Q>ps: Q> Элемент собственного "склепа" в BCB++ 5.0
Смотря какой AX и где будет показываться веб-страница.
Если это — часть собственного приложения, которое будет устанавливаться на машине клиента, то достаточно пометить элемент как безопасный для скриптинга и инициализации.
Это достигается либо реализацией интерфейса IObjectSafety, либо, как уже сказали, прописыванием реализованных категорий CATID_SafeForScripting и CATID_SafeForInitializing.
Если же веб-страница будет находиться в интернете, то для AX необходимо указывать атрибут CODEBASE с местонахождением архива .CAB, содержащего файлы ActiveX. По умолчанию, будут загружаться (и то, спрашивая у юзера разрешения) только те .CAB-ы, которые подписаны сертификатом, выданным конторой типа VerySign. Это небесплатно.
Кроме того, узер может повысить настройки безопасности в IE, и тогда не будут работать и такие компоненты.
Для собственного приложения с веб-страницей эта проблема разрешима, если реализовать интерфейс IDocHostUIHandler.
Здравствуйте, Andy77, Вы писали:
A>This is the way we do it using ATL, you can probably take a look on it.
A>1. A>#include <ObjSafe.h>
A>2. Add those lines into your coclass:
A>BEGIN_CATEGORY_MAP(CoclassName) A> IMPLEMENTED_CATEGORY(CATID_SafeForScripting) A> IMPLEMENTED_CATEGORY(CATID_SafeForInitializing) A>END_CATEGORY_MAP()
A>No more "screams" from IE.