Clientes y servidores COM

Un aspecto crítico de COM es cómo interactúan los clientes y los servidores. Un cliente COM es cualquier código u objeto que obtiene un puntero a un servidor COM y utiliza sus servicios llamando a los métodos de sus interfaces. Un servidor COM es cualquier objeto que proporcione servicios a los clientes; estos servicios se encuentran en forma de implementaciones de interfaz COM a las que cualquier cliente que pueda obtener un puntero a una de las interfaces del objeto de servidor.

Hay dos tipos principales de servidores, en proceso y fuera de proceso. Los servidores en proceso se implementan en una biblioteca vinculada dinámica (DLL) y los servidores fuera de proceso se implementan en un archivo ejecutable (EXE). Los servidores fuera de proceso pueden residir en el equipo local o en un equipo remoto. Además, COM proporciona un mecanismo que permite que un servidor en proceso (un archivo DLL) se ejecute en un proceso EXE suplente para obtener la ventaja de poder ejecutar el proceso en un equipo remoto. Para obtener más información, consulte Suplentes de DLL.

El modelo y las construcciones de programación COM ahora se han ampliado para que los clientes y servidores COM puedan trabajar juntos en toda la red, no solo dentro de un equipo determinado. Esto permite que las aplicaciones existentes interactúen con nuevas aplicaciones y entre sí entre redes con una administración adecuada, y se pueden escribir nuevas aplicaciones para aprovechar las características de red.

Las aplicaciones cliente COM no necesitan tener en cuenta cómo se empaquetan los objetos de servidor, tanto si se empaquetan como objetos en proceso (en archivos DLL) como objetos locales o remotos (en EXE). Com distribuido permite empaquetar objetos como aplicaciones de servicio, sincronizando COM con las completas funcionalidades administrativas y de integración del sistema de Windows.

Nota

A lo largo de esta documentación, el acrónimo COM se usa en preferencia para DCOM. Esto se debe a que DCOM no es independiente; es simplemente COM con un cable más largo. En los casos en los que se describe lo que se describe es específicamente una operación remota, se usa el término COM distribuido .

 

COM está diseñado para que sea posible agregar la compatibilidad con la transparencia de ubicación que se extiende a través de una red. Permite que las aplicaciones escritas para equipos individuales se ejecuten a través de una red y proporcionan características que amplían estas funcionalidades y agregan a la seguridad necesaria en una red. (Para obtener más información, vea Seguridad en COM).

COM especifica un mecanismo por el que muchas aplicaciones diferentes pueden usar el código de clase.

Para obtener más información, vea los temas siguientes:

Sincronización de llamadas

Seguridad en COM