Está en la página 1de 9

Geovanni Hernández Carranza

INSTITUTO TECNOLÓGICO SUPERIOR DE APATZINGÁN

ALUMNO: Geovanni Hernández Carranza.
MATERIA: Programación en Ambiente ClienteServido

FECHA: 26/ 11 / 2014
Docente: Hugo Alberto Torres Báez

UNIDAD 4
COM/DCOM (Component Object
Model/Distribuited COM)

Certificado

Km. 3.5 Carretera Apatzingán-Aguililla, Col. Tenencia de Chandio C.P. 60710, A.P. 49, Apatzingán, Michoacán,
Tel./Fax (453)-534-25-13 y (453)-534-03-71 WEB http://www.itsapatzingan.edu.mx, Email: itsapatzingan@itsa.edu.mx

42274

Apatzingán.1 CREACION DE SERVIDORES COM COM es el acrónimo de Component Object Model (Modelo de Objeto Componente) con lo cual se pueden crear objetos desde un lenguaje y poder utilizarlos en otro distinto en que fueron creados.edu. A.py” y escribimos en el: import sys import pythoncom class interprete_python: _public_methods_ = ["Evaluar"] #metodos a exportar por el servidor COM _public_attrs_ = ["Version"] #atributos a exportar por el servidor COM _readonly_attrs_ = _public_attrs_ #atributos de solo lectura _reg_progid_ = "interprete_python" #nombre para crear el objeto COM #asignamos el id de clase por medio de la funcion CreateGuid _reg_clsid_ = pythoncom. EJEMPLO DE CREACION DE UN SERVIDOR COM EN PYTHON: Creamos un archivo llamado “miservidorcom. Email: itsapatzingan@itsa.mx. Col. expresion): return eval(expresion) Km.Version = sys.P.mx Certificado 42274 . 3. Tel.version #evalua una expresion python y devuelve su resultado def Evaluar(self. en este ejemplo se muestra como crear un objeto COM desde Python para poder utilizarlo desde VBA/Excel. 49.5 Carretera Apatzingán-Aguililla. Tenencia de Chandio C. 60710.P./Fax (453)-534-25-13 y (453)-534-03-71 WEB http://www.CreateGuid() #constructor. Entonces. Michoacán.itsapatzingan. seteo de atributos def __init__(self): self.Geovanni Hernández Carranza INSTITUTO TECNOLÓGICO SUPERIOR DE APATZINGÁN UNIDAD 4 COM/DCOM (Component Object Model/Distribuited COM 4.edu.

mx. Email: itsapatzingan@itsa. Michoacán.mx Certificado 42274 . A. Tenencia de Chandio C.exe if __name__ == "__main__": import win32com.Geovanni Hernández Carranza #Codigo para registrar el script en caso de ser ejecutado por linea de INSTITUTO TECNOLÓGICO SUPERIOR DE APATZINGÁN comando por python. Apatzingán.py --register Después de haber registrado el servidor COM.P.edu. Col. 60710. hay que registrarlo con la siguiente instruccion desde la linea de comando: python miservidorcom.register.edu. Tel.itsapatzingan.UseCommandLine(interprete_python) raw_input("\nServidor COM instalado!") Antes de poder utilizar el objeto COM en VBA/Excel.5 Carretera Apatzingán-Aguililla.server./Fax (453)-534-25-13 y (453)-534-03-71 WEB http://www.P. 3.server.register print sys. ya podemos invocarlo desde VBA/Excel de la siguiente forma: Option Explicit Sub Main() Dim Python As Object Dim Version As String Dim Expresion As String Dim Resultado As String ' Creo el objeto Python exportado por el Servidor COM: Set Python = CreateObject("interprete_python") ' Obtengo un atributo del objeto python: Km. 49.argv win32com.

A. Michoacán./Fax (453)-534-25-13 y (453)-534-03-71 WEB http://www.Version MsgBox Version.Geovanni Hernández Carranza INSTITUTO TECNOLÓGICO SUPERIOR DE APATZINGÁN Version = Python. 60710. Tel. Tenencia de Chandio C. 49. Email: itsapatzingan@itsa.edu. 3.P. "Resultado:" Loop End Sub Certificado Km. "Ejemplo COM".edu. . "Versión de Python:" Do Expresion = InputBox("Ingrese una expresión python para ser evaluada". . "1+2") If Expresion = "" Then Exit Sub ' Llamo al método del objeto python: Resultado = Python.Evaluar(Expresion) MsgBox Resultado.mx.itsapatzingan.mx 42274 . Col.5 Carretera Apatzingán-Aguililla. Apatzingán.P.

Michoacán.mx.edu. Col. Email: itsapatzingan@itsa./Fax (453)-534-25-13 y (453)-534-03-71 WEB http://www.2 Creación de TECNOLÓGICO un Cliente En COM SUPERIOR DE APATZINGÁN INSTITUTO Certificado Km. 60710.mx 42274 .5 Carretera Apatzingán-Aguililla. 3.P. Apatzingán. 49.itsapatzingan.Geovanni Hernández Carranza 4. A.edu. Tenencia de Chandio C.P. Tel.

49. Email: itsapatzingan@itsa.P.mx./Fax (453)-534-25-13 y (453)-534-03-71 WEB http://www. Michoacán.5 Carretera Apatzingán-Aguililla. Apatzingán.edu. Tel. 60710.Geovanni Hernández Carranza INSTITUTO TECNOLÓGICO SUPERIOR DE APATZINGÁN Certificado Km. A.P.mx 42274 .itsapatzingan.edu. 3. Tenencia de Chandio C. Col.

Apatzingán. 3. etc). Col. Tenencia de Chandio C. "método dos". rasga interfaces. rápidos (COM) del modelo de objetos componentes.mx.4 ACTIVE TEMPLATE LIBRARY Active (ATL) Template Library es un conjunto de clases de C++ basadas en plantillas que permiten crear objetos pequeños. JScript) puedan invocar estos componentes mediante un valor numérico (algo así como "método uno". Certificado Km. y controles ActiveX. 60710. incluidas las implementaciones comunes. Esto se logra mediante los archivos idl/odl y la implementación de la interfaz IDispatch.NET que está diseñado para simplificar la programación COM.5 Carretera Apatzingán-Aguililla.edu. Email: itsapatzingan@itsa. de antemano. puntos de conexión.Geovanni Hernández Carranza INSTITUTO TECNOLÓGICO SUPERIOR DE APATZINGÁN 4. Michoacán. interfaces duales. una característica nueva de Visual C++ .mx 42274 .edu.itsapatzingan. Esto sirve para que lenguajes como Visual Basic o los de scripting (VBScript. 4.Tiene compatibilidad especial para características COM clave.3 AUTOMATIZACION Component Object Model (y derivados) se refiere a la capacidad de poder crear componentes COM que tengan la capacidad de ser usados sin necesidad de conocer los nombres y parámetros de los métodos.P.P. Tel. A. Si tiene muchos programación ATL. Para obtener más información. deseará obtener más información sobre atributos. vea Programación con atributos./Fax (453)-534-25-13 y (453)-534-03-71 WEB http://www. interfaces COM estándar de enumeradores. 49.

conocida como MSRPC.Geovanni Hernández Carranza INSTITUTO TECNOLÓGICO SUPERIOR DE APATZINGÁN 4.edu. Tenencia de Chandio C. A. En términos de las extensiones que añade a COM. Apatzingán.5 DCOM (DISTRIBUITED COM) Distributed Component Object Model (DCOM). 3. en español Modelo de Objetos de Componentes Distribuidos.1 2 La adición de la "D" a COM fue debido al uso extensivo de DCE/RPC. Km. Email: itsapatzingan@itsa. o más específicamente la versión mejorada de Microsoft./Fax (453)-534-25-13 y (453)-534-03-71 WEB http://www.Serializar y deserializar los argumentos y valores de retorno de las llamadas a los métodos "sobre el cable".mx.mx Certificado 42274 . Col. Ha sido abandonada en favor del framework .P.P.itsapatzingan. Extiende el modelo COM de Microsoft y proporciona el sustrato de comunicación entre la infraestructura del servidor de aplicaciones COM+ de Microsoft. Tel.5 Carretera Apatzingán-Aguililla. DCOM tenía que resolver los problemas de  Aplanamiento . es una tecnología propietaria de Microsoft para desarrollarcomponentes software distribuidos sobre varios ordenadores y que se comunican entre sí.NET. 49.edu. Michoacán. 60710.

el proceso cliente ha caído o la conexión de red se pierde.P. Microsoft. DCOM fue uno de los mayores competidores de CORBA. 60710. Col. Email: itsapatzingan@itsa. Los defensores de ambas tecnologías sostenían que algún día serían el modelo de código y servicios sobre Internet.Geovanni Hernández Carranza  Recolección de basura distribuida./Fax (453)-534-25-13 y (453)-534-03-71 WEB http://www.edu. Certificado Km. combinadas con los navegadores web les ganasen la partida. significó que las peticiones HTTP normales. Tenencia de Chandio C. over HTTP).itsapatzingan.mx 42274 . Sin embargo.mx.5 Carretera Apatzingán-Aguililla. 49.P. en su momento intentó y fracasó anticiparse a esto añadiendo un transporte extra HTTP a DCE/RPC denominado "ncacn_http" (Connection-based. Uno de los factores clave para resolver estos problemas es el uso de DCE/RPC como el mecanismo RPC subyacente bajo DCOM. las dificultades que suponía conseguir que estas tecnologías funcionasen a través de cortafuegos y sobre máquinas inseguras o desconocidas. Apatzingán. DCE/RPC define reglas estrictas en cuanto al aplanamiento y a quién es responsable de liberar la memoria. asegurándose que las referencias mantenidas por INSTITUTO TECNOLÓGICO SUPERIOR DE APATZINGÁN clientes de las interfaces sean liberadas cuando. por ejemplo. Michoacán.edu. 3. Tel. A.