ACTIVE X

 

 

Definición del objeto ActiveX

Un objeto ActiveX se define como el que se adhiere al Modelo de Objetos Componentes (Component Object Model COM) definido por Microsoft.

 

 Un objeto que cumpla con este modelo tiene las siguientes características:

§        Un objeto ActiveX está aplicado como código binario, por consiguiente, puede estar escrito en cualquier lenguaje fuente.

§        El objeto está encapsulado en un archivo ejecutable o en una biblioteca de vínculo dinámico. 

§        El objeto contiene datos de dos tipos: datos de presentación, que se requieren para presentar la pantalla o para imprimir, y datos internos. Puede considerar los dos tipos de datos como propiedades que son privadas para el objeto.

§        El objeto contiene también funciones para manipular sus datos.

§        El objeto proporciona una interfaz estándar para que otros objetos se comuniquen con él.

§        El objeto participa en la disposición en formación, proceso de pasar argumentos de funciones y valores de retorno entre procesos y máquinas.

 

Que hace un objeto ActiveX

Un objeto ActiveX, esta esperando, sin hacer nada, hasta que es llamado. Hay objetos que esperan a ser llamados como servidores, pero mientras tanto están muy ocupados, quizás como clientes llamando a otros objetos servidor. Pro ejemplo, Word puede ser llamado como servidor por un objeto cliente externo. En general, se espera que los objetos OLE acepten varios protocolos y proporcionen varios servicios: 

En el contexto de los documentos compuestos, se supone que los objetos OLE: 

Los objetos OLE proporcionan un objeto interno conocido como apodo, que encapsula un puntero a un objeto y el mecanismo para volver a crear el puntero si es necesario. En términos de DDE, el puntero es una ruta para el objeto vinculado junto con un método para localizar el objeto vinculado, en el caso en que la ruta absoluta llegue a ser imprecisa.

 

Reutilización de código

La idea de reutilizar código es común a casi todos los lenguajes de programación, mediante esta técnica se consiguen importantes ahorros de tiempo en programación, pero a costa de un problema, para usar una clase, por ejemplo en C++, hace falta acceder completamente al código fuente.

 

Con ActiveX no se necesita ningún código fuente. Como el código original se ha convertido en un control ActiveX, es posible utilizarlo sin el apoyo de un programa compatible con ActiveX. Los controles ActiveX ofrecen un marco de reutilización de código, ya que son independientes del lenguaje. Los controles permiten conectar código C++ con Java, el código Java con Visual Basic, Visual Basic con C++ y así sucesivamente.

 

Reutilización en binario

Los controles ActiveX pueden conseguir esta independencia del lenguaje, ya que su código se encripta en forma binaria, no como código fuente. Sea cual sea la herramienta de desarrollo utilizada, el resultado será un control ActiveX comprensible como binario por cualquier programa compatible con ActiveX.

            La independencia del lenguaje no es la única ventaja que se extrae del empleo de código reutilizable en forma binaria. Por ejemplo, después de convertir un algoritmo en un control ActiveX, podrá suministrarse a otros programadores sin necesidad de desvelar el resto del código fuente. Además los algoritmos dejarán de estar limitados a las herramientas de desarrollo. Toda aplicación que se que contemple en sus controles al estándar ActiveX, podrá hacer uso de este código.

 

Contenedores ActiveX

Los programas que usan controles ActiveX se llaman contenedores. El contenedor de un control es una aplicación capacitada para el manejo de ActiveX que actúa como soporte de interfaz de usuario para dicho control. Se puede por ejemplo, presentar un botón que, una vez pulsado, envíe un mensaje al control. O también responder a diversos sucesos, o mensajes especiales que se envían desde el control al contenedor. Estos sucesos pueden reclamar un "clic" de ratón, la terminación de una tarea o cualquier otra cosa.

El principal contenedor ActiveX existente, es el navegador Web. Un navegador puede mostrar controles ActiveX en una página Web incluso aunque el control provenga de un ordenador remoto.

Para obtener un máximo aprovechamiento de la arquitectura ActiveX son necesarios tanto los controles como los contenedores. Los primeros permiten empaquetar código fuente en un objeto único y reutilizable.

 

El problema de la transportabilidad

Los controles ActiveX no han sido concebidos para un funcionamiento interplataformas. La arquitectura ActiveX está fuertemente ligada al sistema operativo Microsoft Windows, los controles ActiveX no funcionan bien en otras plataformas. Este problema se agrava más, por el hecho de que los controles ActiveX no dependen solo de la plataforma, sino también del navegador. Con la excepción de Internet Explorer, los navegadores han de trucarse para admitir el manejo de ActiveX.

 

Acceso a archivos

Los controles ActiveX pueden acceder a archivos del ordenador cliente. Un control ActiveX podría guardar los resultados de una consulta a una base de datos en el disco duro, como fuente de futuras referencias.

El acceso a archivos es una alternativa cómoda, pero también peligrosa. Para paliar este problema, existe una solución. Antes de cargar ningún control ActiveX, el navegador Web lo explora en busca de una secuencia encriptada de octetos. Esta secuencia, o firma digital, es creada en un proceso conocido como firma de código. Si encuentra esta secuencia el navegador podrá determinar quién escribió el código y quién lo distribuyó y, por lo tanto, conocerá la identidad del responsable. Cuando no detecta la secuencia, advierte al usuario que el control puede ser peligroso y le da la opción de no cargarlo.

 

 Código heredado

Los controles ActiveX, ofrecen un soporte muy completo para el código heredado. El proceso de conversión de programas existentes a controles ActiveX es bastante sencillo, y como los controles ActiveX son independientes del lenguaje, no importa que lenguaje se elija para componer la base de codificación.

            Aparte del código heredado, se pueden recuperar controles heredados. Los controles OLE son totalmente compatibles con ActiveX. En consecuencia, será posible seguir perfeccionando el código de los programas con los últimos controles ActiveX.

  

Compilación

Cuando se crea un control ActiveX en Visual C++, debe compilarse dicho control en el lenguaje maquina nativo antes de iniciar las fases de pruebas y depuración. Visual C++ consume bastante potencia para traducir el código fuente C++ a lenguaje maquina nativo, por lo que se perderá un tiempo importante esperando a que el código termine de compilarse. Dicho código debe, pues, preprocesarse, analizarse, traducirse, optimizarse, ensamblarse y, finalmente, escribirse en disco.

 

Ejecución

         Los controles ActiveX se ejecutan directamente en el sistema para el que han sido compilados. La mayoría de los compiladores optimizarán el código ActiveX por la eliminación de código innecesario o redundante.

 

Cargar el control

Los controles ActiveX, son perdurables, es decir, cuando se bajan de Internet, el navegador Web guardará en disco una copia del control. Antes de salvar en disco un control ActiveX, el navegador Web lleve a cabo tres comprobaciones (licencia, versión y firma) con el fin de garantizar la seguridad y proteger los derechos de propiedad del mismo.

 

Comprobación de licencia

Para evitar el uso sin licencia de los controles ActiveX en las páginas Web se ha incluido un mecanismo especial de protección, según el cual la distribución de los controles se acompaña de una licencia al desarrollador. Con esta licencia, los usuarios reciben permiso para insertar el control en herramientas como Visual Basic, Visual J++ y Visual C++. Si no se dispone de esa licencia, el usuario tan solo podrá visualizar el control dentro de una página Web o en una aplicación existente, nunca modificar su modo de actuar.

 

Interfaces ActiveX

Las interfaces ActiveX son colecciones de funciones interrelacionadas. Las interfaces ActiveX no ha sido diseñadas en el ámbito de la POO, y no tienen relación alguna con las clases o la herencia.

 

Funciones binarias

Las interfaces activeX, se pueden considerar como funciones ActiveX, pero como funciones a nivel binario.

Las funciones normales, al ser miembros de una clase, sólo existen en código fuente y, por tanto, dejan de ser accesibles una vez que se compilan. En cambio, las interfaces ActiveX se encuentran en el extremo opuesto: sólo pueden llamarse después de haber sido compiladas en forma binaria.

Una vez hecho esto, las funciones ActiveX pasan a estar disponibles para todo el sistema. Cualquier programa compatible con ActiveX, con independencia de cómo haya sido creado (con C++, Java, Visual Basic u otro lenguaje), puede invocar funciones binarias sin necesidad del código fuente. Esta peculiar caracteristica conforma un tipo de programa particular, llamado software de componentes, que ofrece ciertas ventajas con respecto al diseño tradicional orientado a objetos.

            Uno de los peligros inherentes a las funciones binarias y extendidas a todo el sistema es la posibilidad de que generen conflictos de nombres. Para solucionar este problema, la arquitectura ActiveX marca cada interfaz con un identificador único a escala global. El algoritmo utilizado garantiza su unicidad. Por consiguiente, un programa ActiveX que solicite un identificador correcto siempre accederá a la interfaz adecuada.

Otra de la ventaja de usar funciones en interfaces ActiveX, se deriva del protocolo Distributed COM de Microsoft, o DCOM. Con este protocolo los programas ActiveX pueden invocar funciones ubicadas no sólo dentro del sistema sino en cualquier punto de la red. El soporte a las interfaces distribuidas procede de un proceso denominado marshaling (enganche).

 

 

INFOGRAFIA

http://www2.terra.com/informatica/que-es/activex.cfm

1. ActiveX

En este articulo, se explica como Microsoft define este tipo de control, cual es su utilidad en la red y cual es su principal ventaja como componente, además puedes bajarte una gran variedad de controles ActiveX freeware o shareware y un detallado ejemplo de cómo construir una aplicación distribuida usando ActiveX y DCOM.

http://cc.msnscache.com/cache.aspx?q=3242616035084&lang=es-XL&mkt=es-XL&FORM=CVRE

2. Creación de un Control ActiveX(OCX) 

Según el autor de la pag, el ejemplo para este "pequeño" tutorial, será igual que el control gsSpin.ocx, al que llamara TextSpin, por aquello de que es un TextBox con un scroll al estilo de un control Spin (suma o resta un valor a lo que ya esté asignado en el TextBox).También, esta "depurándo", otro control que es igual al ListBox que viene con VB5, en el que se puede especificar si queremos mostrar una lista normal y corriente o bien una con cajas de chequeo. Este manual se basa en este ejemplo con el cual, se espera sirva como guía para que puedas crear los tuyos propios.

 

http://www.mvps.org/vexpert/articles/axProp1.htm

3. Extendiendo Controles con ActiveX        

Pienso que alguna vez Usted se cansa de escribir procedimientos para dar una mayor funcionalidad a los Controles Visual Basic, y repetir una y otra vez el código en sus proyectos. Un ejemplo clásico es aquello de que cuando un TextBox gane el enfoque aparezca seleccionado su contenido. Yo ideé un módulo independiente Bas para que los TextBox se comporten como yo quiero, y llamo a los procedimientos desde los eventos, pasando como parámetro el TextBox. -¡Que aburrido!, repita y repita llamadas para cada TextBox o arreglo de TextBox que agregue a un Formulario. La solución era perfectamente aceptable hasta Visual Basic nos entrego ActiveX de una manera flexible. Así pues, aprovechemos ActiveX, donde simplemente escribo un Control ActiveX para extender propiedades a TextBox y listo. Bastará dibujar el control en los formularios y asignarle propiedades para obtener toda la funcionalidad programada. Es como si Visual Basic me entregara el control tal y como lo quiero.

http://www.cibermanuales.com

4.  Manual Active X 

Activar a ActiveX Si has pasado ya algún tiempo analizando la nueva generación de web Browsers: Microsoft Internet Explorer 4.0 y su contraparte de Netscape, es probable que hayas escuchado el termino ActiveX. Aunque Java sigue siendo el rey del Web, ActiveX esta ganando terreno con rapidez. En seguida veras en que consiste ActiveX. El concepto básico que subyace en la implementación de ActiveX es muy sencillo. Permite que una parte de un código de computadora (un programa) se deslice al interior de una pagina web. El programa podría diseñarse para desempeñar casi cualquier función, desde producir algún sonido hasta interpretar los resultados de ingreso de un usuario. Este es un paso lógico en el progreso de las paginas Web, que en principio podrían mostrar información sola en los estilos predefinidos. Es cierto que ActiveX de Microsoft no es el primer intento por expandir el poder de las paginas Web. Java se basa en gran medida en este concepto al igual que los programas de escritura Java Script y Visual Basic Script (VBScript). Sin embargo, tales extensiones del Web no son iguales; cada una ofrece pros y contras, tanto al creador como al usuario final.

http://es.selfhtml.org/introduccion/tecnologias/

5.  ActiveX y HTML 

 ActiveX sólo puede ser directamente ejecutado por el MS Internet Explorer. Para Netscape existe un plugin de ActiveX que se puede bajar. Con ese plugin es posible ejecutar ActiveX también con el Navigator.

Actualmente está en discusión el concepto de seguridad de ActiveX. Si un usuario permite que un control ActiveX sea cargado en su ordenador, entonces ese programa puede hacer lo que le da la gana. No existe ninguna restricción para los comandos de ActiveX, sino tan sólo una "barrera de confianza" (el mensaje del navegador si el usuario está de acuerdo con la ejecución del programa en su ordenador). Desde el punto de vista de programación se pueden realizar muchas cosas más que con applets Java, sin embargo desde el punto de vista del usuario los módulos de ActiveX son mucho más inseguros que los applets Java.

 

 

 

 

 

 

 

 

 

 

 

 

Hosted by www.Geocities.ws

1