Object Linking and Embedding es una tecnología que permite a las aplicaciones

Asociaciones, vínculos y OLE-¿Cómo puede este confuso Get?

Descripción general

OLE (Object Linking and Embedding) es una tecnología que permite a las aplicaciones para compartir datos y funcionalidad con facilidad. Me gusta eso. Suena bien. Es rápido y fácil de entender, y es básicamente exacto. Uso de OLE, las aplicaciones pueden pasar los datos de ida y vuelta, y OLE también permite a un servidor y el cliente para pasar la funcionalidad de programación entre ellos. El servidor es capaz de hacer algo que el cliente quiere hacer. OLE colabora ampliamente con el Registro. Pero antes de llegar a eso, es importante entender cómo OLE evolucionado y cómo funciona.

Entendimiento OLE (o no)

  

En primer lugar, vamos a comenzar con algunas reglas básicas:

• No hay manera de aprender todo acerca de OLE en un tutorial. (Dudo que usted puede aprender todo acerca de OLE en un solo tutorial!)

• Aunque los expertos OLE no son realmente los expertos.

• Hay una serie de buenos tutoriales en OLE, pero si no es de programación, evitarlos.

• Si usted no entiende todo acerca de OLE después de leer este tutorial, no te sientas mal.

• El autor no asume ninguna responsabilidad por lo que pasa cuando te levantas a las 2 am y gritar: "¡Ahora entiendo!" La mayoría de los programadores no construyen sus aplicaciones OLE desde el principio. En cambio, para las partes difíciles, que utilizan los sistemas de desarrollo, tales como estudio de Microsoft Developer. Hoy en día, un programador puede crear una aplicación OLE casi tan rápidamente como cualquier otro tipo de aplicación. La mayoría de aplicaciones de gestión de su configuración inicial de OLE por sí mismos. Algunas aplicaciones dependen de sus programas de instalación para hacer la configuración de OLE. Y algunas aplicaciones utilizan el programa de instalación, tanto para establecer OLE y, si se daña la configuración, para reparar el daño en la medida en que puedan volver a configurar los componentes OLE. Esto nos lleva a algunas preguntas. En primer lugar, ¿cómo funciona OLE? En segundo lugar, ¿qué OLE tienen que ver con el registro? Por otra parte, ¿por qué tenemos que preocuparnos al respecto? No hemos mencionado DDE? ¿Y dónde, oh donde, encaja el Portapapeles en este lío? OK, permanezca atento a las respuestas a todas estas preguntas.

Introducción a OLE

Kraig Brockschmidt de Microsoft es probablemente el más conocido experto en OLE. He aquí cómo describe su evolución: la API de Windows (Application Program Interface) se convirtió en objetos de Windows, que finalmente se convirtió en lo que conocemos como OLE. Kraig admite que no es tan sencillo, pero OLE desarrollado por la evolución, no por la revolución. Allá por el bien días de edad, Windows era mucho más simple y más fácil de entender. En su primera versión, Windows permite prácticamente ninguna comunicación entre procesos. Hubo en el Portapapeles (que todavía sabemos y el amor), a la que un programa podría publicar datos que otro programa puede (con suerte) leer. Sin embargo, ese cambio requiere la interacción del usuario. El usuario está obligado a tomar medidas para poner los datos seleccionados en el portapapeles y luego en la aplicación receptores tomar medidas para recuperar los datos almacenados en el Portapapeles. Surgieron problemas. En primer lugar, el Portapapeles de base admite sólo una gama muy limitada de tipos de datos. Los programas pueden intercambiar datos en varios formatos de base (de texto y binarios, en su mayor parte), pero estos formatos fueron duramente falta de flexibilidad para expresar cualquier objeto que se compone de datos compuestos.

Los datos compuestos?

Los datos compuestos son los datos que contiene información en múltiples formatos. La forma más fácil de tipo de datos compuesto de imaginar es un documento de procesamiento, que incluye algunas imágenes. En este punto en la evolución del Portapapeles, el programa de procesamiento no podía tirar ese documento y sus imágenes en el Portapapeles. Después de todo, ¿cómo el programa de identificar el formato de esos datos? Si dijo binario, ninguna otra aplicación sería capaz de entender o utilizar los datos. Si dijo que el texto, ¿qué pasaría cuando una aplicación que trató de utilizar los datos y se encontró con las imágenes? Sería eliminar las imágenes? Claro, que el trabajo, pero si el usuario

quería que el documento completo, incluidas las imágenes, él o ella sería muy satisfecho con los resultados. Microsoft se dio cuenta rápidamente de que las solicitudes necesarias de manera directa, la aplicación de método de aplicación de comunicación de que no se basó en el Portapapeles. Rápida o lentamente, dependiendo de su punto de vista, nació el concepto de DDE (Dynamic Data Exchange). En realidad, "concebido" sería una mejor descripción, porque DDE no era viable en su formato original. A medida que creció, DDE no permiten que las aplicaciones de comunicación de datos. Sin embargo, todavía hay problemas. Con el DDE, no había forma de solicitudes para obtener información sobre sus socios. Desarrolladores crear aplicaciones más DDE específicamente como pares. Para aplicaciones de dos fuentes independientes, DDE es poco probable que sea útil, porque los desarrolladores tendrían que cooperar con el fin de tomar ventaja de DDE. OLE se convirtió en la siguiente etapa en el desarrollo de las comunicaciones y el intercambio de datos entre aplicaciones. OLE permite una aplicación para interactuar con otra sin saber, con antelación, sobre la otra aplicación. Magic, de verdad. El Portapapeles El Portapapeles es el método original y más básico de transferencia de datos entre aplicaciones. El Portapapeles soporta tanto las transferencias de aplicación (entre dos aplicaciones) y las transferencias intraapplication (en la misma aplicación). Sólo hay un objeto en en el Portapapeles en cualquier momento. (Microsoft Office utiliza un interfaz de múltiples documentos Portapapeles, sin embargo, esta interfaz es creado e implementado por la Oficina, y no de Windows.) Existen algunas reglas complejas en el Portapapeles, tales como las siguientes:

• Una aplicación no puede suponer que un objeto colocado en el Portapapeles permanecerá allí después de la aplicación libera el Portapapeles. Por lo tanto, no es posible utilizar el Portapapeles como un lugar de almacenamiento temporal.

• El formato del objeto en el portapapeles debe estar en uno de los formatos estándar (que se enumeran más abajo), o la aplicación de colocar los datos en el portapapeles debe estar preparado para hacer o mostrar el contenido del Portapapeles de.

• Algunos objetos en el Portapapeles en un formato que no es nativo de Windows. Estos objetos requieren la aplicación que coloca el objeto de estar disponible para mostrar o hacer que el objeto de ser necesario. Windows XP soporta los siguientes tipos de datos en el portapapeles, sin crear formatos personalizados: CF_BITMAP Un mapa de bits (imagen) CF_DIB un DIB (Device Independent de mapa de bits) CF_DIBV5 una versión 5 de mapa de bits (disponible en Windows 2000 y versiones posteriores) Un CF_DIF DIF (Data Interchange Format) de objetos

CF_DSPBITMAP Un mapa de bits en formato privado CF_DSPENHMETAFILE un formato de pantalla mejorada metarchivo objeto CF_DSPMETAFILEPICT Un metarchivo-objeto de visualización de imagen en formato CF_DSPTEXT un objeto de texto formato de visualización, con el formato privado CF_ENHMETAFILE un objeto de metarchivo mejorado CF_GDIOBJFIRST través CF_GDIOBJLAST una serie de valores enteros para applicationdefined GDI (Graphical Device Interface ) los objetos CF_HDROPV un mango de tipo HDROP, la identificación de una lista de archivos CF_LOCALE información del local CF_METAFILEPICT un objeto de imagen de metarchivo CF_OEMTEXT un formato de texto en el OEM (fabricante de equipos originales) el conjunto de caracteres CF_OWNERDISPLAY Un objeto de formato propietario pantalla CF_PALETTE Un objeto de una paleta de colores CF_PENDATA objeto de datos que contiene para las extensiones de la pluma para Microsoft Windows para Pen Computing CF_PRIVATEFIRST través CF_PRIVATELAST una serie de valores enteros para los formatos de portapapeles privado CF_RIFF un objeto de sonido demasiado complejo para el formato CF_WAVE CF_SYLK un objeto en Microsoft enlace simbólico (SYLK) formato CF_TEXT Una llanura -objeto de formato de texto CF_WAVE Un objeto de audio, usando PCM (Pulse Code Modulation) Un CF_TIFF Tagged Image File Format objeto CF_UNICODETEXT un objeto de texto utilizando los dos caracteres Unicode byte Como muestra esta lista, Windows es compatible con muchos formatos diferentes, sin la intervención del programador . Sin embargo, en muchos casos, estos formatos no son adecuados. En estos casos, la solicitud de servicio (colocación), los datos en el Portapapeles puede registrar un formato nuevo con Windows. Para permitir la visualización de los datos del Portapapeles, también debe tener el código que muestra los datos del Portapapeles.

DDE

El proceso de DDE utiliza el Portapapeles para transferir grandes bloques de datos, también. Normalmente, la aplicación de servidor coloca los datos en el Portapapeles y utiliza DDE para decirle a la aplicación cliente sobre los datos. Las aplicaciones de servidor pueden pasar pequeños objetos de datos a la aplicación cliente como parte de la conversación DDE.

¿Qué es OLE?

Incrustación

Con la incrustación de un objeto (que podría ser un objeto de datos o funcionalidad de servidor) está incrustado en la aplicación de cliente o datos de la aplicación cliente. Cuando incrusta Word en Outlook, se crea una ventana, y usando OLE, Word decirle a utilizar esta ventana para interactuar con el usuario. También indican a Word cómo debe aparecer al usuario, por ejemplo, Outlook personaliza las barras de herramientas de Word. Esta inserción funciona independientemente de si Word se está ejecutando o no. Si Word se está ejecutando, cualquier cosa que la Palabra está haciendo actualmente no se ve afectada por tener incrustado de Word en Outlook E-mail sistema de edición. De hecho, el servidor OLE trata como instancias independientes del programa, y los mantiene separados. Hay ventajas, sin embargo. Si el servidor se está ejecutando, no es necesario para cargar una segunda copia del servidor. En cambio, comparten los dos casos, el código ejecutable. Con los objetos incrustados, el cliente es propietario de una copia privada de los objetos. El servidor puede actualizar el objeto del cliente, aunque el servidor no va a cambiar otras instancias de los datos. Cada vez que un objeto incrustado se utiliza, no habrá una nueva copia del objeto. Para los objetos complejos, gráficos, etc, esto puede consumir recursos de sistema importantes.

Object Linking

Object Linking es una tecnología misterioso donde una aplicación crea un objeto utilizado por otra aplicación más adelante. Un objeto vinculado sigue siendo propiedad de la solicitud de creación, y sólo hay una copia del objeto. El servidor es el uso que crea. Los enlaces de servidor a la aplicación de cliente. Cuando el servidor actualiza el objeto, el cliente recibe un mensaje y actualizaciones de la visualización del objeto en el cliente como sea necesario. Algunos objetos no son visibles, lo que no hay actualización de la pantalla es necesario. Lo más parecido a mostrar cómo funciona la vinculación es mirar en el propio Windows. Hay una serie de iconos en el escritorio. La mayoría se denominan métodos abreviados, que se denotan por que hasta divertido que apunta hacia la imagen de flecha en la esquina inferior izquierda. Piense en estos accesos como enlaces. Abra las propiedades de un acceso directo e ir a la ficha Acceso directo. En el cuadro de edición de destino, podrás ver el nombre del archivo que se asocia con este acceso directo (link). Si usted tiene una docena de accesos directos en el mismo archivo, cada acceso directo se abrirá la misma copia del programa. No habrá una docena de copias del programa.

Controles OLE, ActiveX, también conocido como

En los ejemplos anteriores, la aplicación de servidor es un programa típico de Windows. Aplicaciones como ésta son las aplicaciones nativas de Windows. Por ejemplo, Word para Windows es una aplicación de servidor. Word tiene una interfaz de usuario y corre por su cuenta, sin necesidad de ningún cliente para incrustar el objeto de Word. A veces, la aplicación de servidor no tiene un nativo, el modo autónomo. Es decir, dicha solicitud no tiene un interfaz de usuario, sin ventana, ni de forma directa para el usuario interactuar con el programa. Aplicaciones de este tipo son los controles ActiveX, que se llamaba OLE

controles. Los controles ActiveX se utilizan comúnmente con programas como Internet Explorer y otros navegadores web, sin embargo, muchos programas se pueden utilizar controles ActiveX. Nota: un control ActiveX debe estar integrada y nunca se puede ejecutar solo. Un usuario típico podría tener un gran número de controles ActiveX instalado, y el usuario no lo sepan. Es común que un usuario para descargar los controles ActiveX desde Internet sin darse cuenta de que esto ha sucedido.

un artículo presentado por Mathenes Dessue


Descargo de responsabilidad:Nuestro sitio web no es responsable por el contenido de este artículo. Webarticles es un recurso de información gratuito.
Importante: Este artículo "Object Linking and Embedding es una tecnología que permite a las aplicaciones", fue traducida por un software automático. Sentimos pena por los errores de ortografía que pueda haber ocurrido. Gracias por su comprensión.


Online: 301 users browsing the articles directory