ActiveX Control не работает в IE6 - PullRequest
1 голос
/ 12 марта 2009

Я пытаюсь заставить javascript общаться с элементом управления activex. Когда это работает и JS может получить статус управления, я получаю определенное сообщение. Если нет, я получаю сообщение об ошибке.

В IE7 / 8 вам предлагается принять элемент управления activex (через панель предупреждения), но в IE6 js просто не может получить статус элементов управления.

У меня также есть попытка создать элемент управления с помощью document.write из внешнего файла, чтобы он мог работать, как только страница загрузится. Элемент управления невидим, поэтому я просто не могу судить по странице, загружается ли она вообще.

Буду признателен за вашу помощь.

Ответы [ 2 ]

1 голос
/ 12 марта 2009

Вероятно, механизм активации элемента управления ActiveX, запущенный в IE7, но я думал, что должен был быть удален в пакете обновления позже. Это большая боль для разработчиков элементов управления и авторов веб-страниц.

Эта статья дает некоторые справочные сведения и советы: http://msdn.microsoft.com/en-us/library/ms537508.aspx

Здесь также есть некоторая полезная информация: http://blogs.msdn.com/ie/archive/2007/11/08/ie-automatic-component-activation-changes-to-ie-activex-update.aspx

0 голосов
/ 12 марта 2009

для активации элемента управления в IE после того, как автоматический механизм (или до) был отключен из-за судебного процесса, поместите тег HTML в HTML как показано ниже

<script src="control.js"></script>

затем создайте файл control.js в корне веб-сайта следующим образом: (вам, конечно, придется отредактировать скрипт для classid вашего элемента управления и его пармов - но вы поняли)

document.write('<OBJECT align=left classid="CLSID:8BD21D30-EC42-11CE-9E0D-00AA006002F3" id=Customer style="HEIGHT: 23px; text-align:left; LEFT: 0px; TOP: 100px; WIDTH: 160px" tabIndex=4 width=75 onchange="NewCustomer" VIEWASTEXT>');
document.write('<param name="VariousPropertyBits" value="746604571">');
document.write('<param name="BackColor" value="2147483653">');
document.write('<param name="ForeColor" value="2147483656">');
document.write('<param name="MaxLength" value="0">');
document.write('<param name="BorderStyle" value="0">');
document.write('<param name="ScrollBars" value="0">');
document.write('<param name="DisplayStyle" value="3">');
document.write('<param name="MousePointer" value="0">');
document.write('<param name="Size" value="4233;609">');
document.write('<param name="PasswordChar" value="0">');
document.write('<param name="ListWidth" value="0">');
document.write('<param name="BoundColumn" value="1">');
document.write('<param name="TextColumn" value="65535">');
document.write('<param name="ColumnCount" value="1">');
document.write('<param name="ListRows" value="8">');
document.write('<param name="cColumnInfo" value="0">');
document.write('<param name="MatchEntry" value="1">');
document.write('<param name="ListStyle" value="0">');
document.write('<param name="ShowDropButtonWhen" value="2">');
document.write('<param name="ShowListWhen" value="1">');
document.write('<param name="DropButtonStyle" value="1">');
document.write('<param name="MultiSelect" value="0">');
document.write('<param name="Value" value>');
document.write('<param name="Caption" value>');
document.write('<param name="PicturePosition" value="458753">');
document.write('<param name="BorderColor" value="2147483654">');
document.write('<param name="SpecialEffect" value="2">');
document.write('<param name="Accelerator" value="0">');
document.write('<param name="GroupName" value>');
document.write('<param name="FontName" value="Arial">');
document.write('<param name="FontEffects" value="1073741824">');
document.write('<param name="FontHeight" value="165">');
document.write('<param name="FontOffset" value="0">');
document.write('<param name="FontCharSet" value="0">');
document.write('<param name="FontPitchAndFamily" value="2">');
document.write('<param name="ParagraphAlign" value="1">');
document.write('<param name="FontWeight" value="400">');
document.write('<param name="autoStart" value="-1"></object>');

autoStart = -1 - импорт для автоматического запуска (после установки). Возможно, вы захотите добавить CODEPATH для объекта, который также указывает на файл control.CAB для установки. (Мне это не нужно в моем случае)

...