0

У меня есть страница HTML + JS, которая вызывающую элемент управления ActiveX с помощью следующего кодаIE Разрешения, необходимые для элементов управления ActiveX

<object id="somecomp" type="application/x-somecomps-associated-mime-type"> 
</object> 

Существует Javascript, который вызывает метод на ActiveX, используя следующий код

var myObj = document.getElementById('somecomp'); 
ret = myObj.somemethod(strInput); 

Если хосту эту страницу на моем локальном рабочем столе c:\something\my.html, & открыть эту страницу на IE9, я получаю предупреждение

Internet Explorer restricted this webpage from running scripts 
or ActiveX controls 

Существует также кнопка, которая сообщает [ Allow Blocked content]. Если я нажму на эту кнопку, актив будет работать нормально.

Однако, если я размещаю эту страницу на удаленном сервере IIS и открываю страницу как http://some_ip_address/my.html, тогда я не получаю это предупреждение вообще &, элемент управления не инициализируется. (myObj не равно нулю - но когда somemethod называется, IE падает)

Если я ставлю http://ipaddress в моих доверенных сайтов, то я не получаю предупреждение и ActiveX работает отлично.

Теперь мне нужно, чтобы эта работа работала, даже если сайт находится в зоне Интернета (т. Е. Не в доверенных сайтах). В IE9 существует множество параметров безопасности, связанных с ActiveX. Есть ли простой способ выяснить, какой именно мне нужно настроить, а не пытаться его по одному.

ответ

1

Здесь вы идете. Точная настройка зависит от того, помечен ли элемент управления ActiveX как безопасный для сценариев или нет, вам все равно придется играть с обоими наборами, чтобы понять это. Кроме того, элемент управления может быть достаточно умным, чтобы проверять зону безопасности, из которой он работает, и ограничивать себя только конкретными зонами (например, локальными или доверенными) или даже конкретным доменом/сайтами. В таком случае вам придется добавить свой веб-сайт (или URL-адрес) в эту конкретную зону, но вам все равно может быть не повезло, если элемент управления - domain-bound.

enter image description here

+0

Изменение запрещенных разрешений на приглашение не помогло. Мне пришлось отключить защищенный режим, чтобы он работал. Я могу сделать что-то более зернистое. – user93353

+0

Не могли бы вы больше узнать о самом контроле? Вы пытались создать его как «новый ActiveXObject (progId)»? – Noseratio

Смежные вопросы