lunes, 8 de septiembre de 2008

El componente ActiveX

Los Componentes ActiveX son fragmentos de código reutilizable y datos conformado por uno o más objetos creados mediante la tecnología ActiveX.

Los componentes ActiveX interactúan con la aplicación y entre sí mediante una relación Cliente-Servidor, donde el cliente es el código de aplicación o componente que utiliza las características de un componente y el servidor es el componente y los objetos que tiene asociados.

Un componente ActiveX implementado como parte de un archivo ejecutable (.exe) es un servidor fuera de proceso y se ejecuta en su propio proceso.

Un componente ActiveX implementado como biblioteca de vínculos dinámicos (.dll) es un servidor en proceso y se ejecuta en el mismo proceso que la aplicación cliente.

Las aplicaciones que no cruzan los límites del proceso para acceder a sus propiedades, métodos y eventos de un objeto son más rápidas (servidores en proceso).

Ejemplo : Excel

  • Project » References
  • Seleccionar Microsoft Excel <versión> Object library
  • Agregue el siguiente código:
 Private Sub Form_Load()
Dim cAxExcelApp As Excel.Application
Dim cAxExcelBook As Excel.Workbook
Dim cAxExcelSheet As Excel.Worksheet

Set cAxExcelApp = New Excel.Application
Set cAxExcelBook = cAxExcelApp.Workbooks.Add
Set cAxExcelSheet = cAxExcelBook.Worksheets.Add

cAxExcelSheet.Cells(1, 1).Value = "www.informatique.com.mx"
cAxExcelSheet.Cells(2, 1).Value = "Visual Basic 6"
cAxExcelSheet.Cells(3, 1).Value = "Componentes ActiveX"

cAxExcelSheet.SaveAs "c:\ejExcel.xls"

cAxExcelBook.Close

cAxExcelApp.Quit

Set cAxExcelApp = Nothing
Set cAxExcelBook = Nothing
Set cAxExcelSheet = Nothing
End Sub

Al emplear una variable de la clase genérica Object, ActiveX usa enlaces en tiempode ejecución, lo que puede acelerar las referecnias a objetos.

Asignar una referencia de objeto mediante CreateObject

 Set variableObjeto = CreateObject(nombreClaseCalificadoObjeto)

Asignar una referencia de objeto mediante GetObject

 Set variableObjeto = GetObject(nombreRuta,nombreClaseCalificadoObjeto)

Blogazos.com. Lo Mejor de los Blogs en Español

0 comentarios: