El control ActiveX no se ejecuta en IE6

votos
1

Estoy tratando de obtener algunos javascript para hablar con un control activex. Cuando esto funciona y el JS puede obtener el estado de los controles, recibo un cierto mensaje. Si no, recibo un mensaje de error.

En IE7 / 8 se le pide que acepte el control activex (a través de la barra de advertencia), pero en IE6 el js simplemente no puede obtener el estado de los controles.

También intenté crear el control utilizando document.write desde un archivo externo para que pueda ejecutarse tan pronto como se cargue la página. El control es invisible, así que no puedo decir simplemente mirando la página si se está cargando.

Agradecería tu ayuda.

Publicado el 12/03/2009 a las 17:08
fuente por usuario
En otros idiomas...                            


2 respuestas

votos
1

Es probable que el mecanismo de activación de control ActiveX que se inició en IE7, pero se suponía que debía eliminarse en un service pack más adelante. Es un gran problema para los desarrolladores de control y los autores de la página web.

Este artículo proporciona algunos antecedentes y consejos: http://msdn.microsoft.com/en-us/library/ms537508.aspx

También hay información útil aquí: http://blogs.msdn.com/ie/archive/2007/11/08/ie-automatic-component-activation-changes-to-ie-activex-update.aspx

Respondida el 12/03/2009 a las 17:12
fuente por usuario

votos
0

para activar un control en IE después de que el Mechinism automático (o antes) se desactivó debido a la demanda, coloque una etiqueta de script en el HTML de la siguiente manera

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

luego crea un archivo control.js en la raíz del sitio web así: (por supuesto, tendrás que editar el script para el classid de tu control y sus parms, pero ya entiendes)

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 es la importación para que se ejecute automáticamente (una vez instalado). Probablemente desee agregar un CODEPATH tpo al objeto que apunta a un archivo control.CAB para la instalación también. (No necesitaba esto en mi caso)

Respondida el 12/03/2009 a las 17:37
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more