Cómo: Hacer referencia a objetos COM desde Visual Basic

En Visual Basic, agregar referencias a objetos COM que tienen bibliotecas de tipos requiere la creación de un ensamblado de interoperabilidad para la biblioteca COM. Las referencias a los miembros del objeto COM se enrutan al ensamblado de interoperabilidad y, a continuación, se reenvían al objeto COM real. Las respuestas del objeto COM se enrutan al ensamblado de interoperabilidad y se reenvían a la aplicación de .NET Framework.

Puede hacer referencia a un objeto COM sin usar un ensamblado de interoperabilidad insertando la información de tipo del objeto COM en un ensamblado de .NET. Para insertar información de tipo, establezca la propiedadEmbed Interop Types en True para la referencia al objeto COM. Si va a compilar mediante el compilador de línea de comandos, use la opción /link para hacer referencia a la biblioteca COM. Para obtener más información, consulte -link (Visual Basic).

Visual Basic crea automáticamente ensamblados de interoperabilidad al agregar una referencia a una biblioteca de tipos desde el entorno de desarrollo integrado (IDE). Al trabajar desde la línea de comandos, puede usar la utilidad Tlbimp para crear manualmente ensamblados de interoperabilidad.

Para agregar referencias a objetos COM

  1. En el menú Proyecto, elija Agregar referencia y, a continuación, haga clic en la pestaña COM del cuadro de diálogo.

  2. Seleccione el componente que desea usar en la lista de objetos COM.

  3. Para simplificar el acceso al ensamblado de interoperabilidad, agregue una instrucción Imports a la parte superior de la clase o módulo en el que usará el objeto COM. Por ejemplo, en el ejemplo de código siguiente se importa el espacio de nombres INKEDLib para los objetos a los que se hace referencia en la biblioteca Microsoft InkEdit Control 1.0.

    Imports INKEDLib
    
    Class Sample
        Private s As IInkCursor
    
    End Class
    

Para crear un ensamblado de interoperabilidad mediante Tlbimp

  1. Agregue la ubicación de Tlbimp a la ruta de acceso de búsqueda, si aún no forma parte de la ruta de acceso de búsqueda y no está actualmente en el directorio donde se encuentra.

  2. Llame a Tlbimp desde un símbolo del sistema y proporcione la siguiente información:

    • Nombre y ubicación de la DLL que contiene la biblioteca de tipos

    • Nombre y ubicación del espacio de nombres donde se debe colocar la información

    • Nombre y ubicación del ensamblado de interoperabilidad de destino

    El siguiente fragmento de código muestra un ejemplo:

    Tlbimp test3.dll /out:NameSpace1 /out:Interop1.dll  
    

    Puede usar Tlbimp para crear ensamblados de interoperabilidad para bibliotecas de tipos, incluso para objetos COM no registrados. Sin embargo, los objetos COM a los que hacen referencia los ensamblados de interoperabilidad deben registrarse correctamente en el equipo donde se van a usar. Puede registrar un objeto COM mediante la utilidad Regsvr32 incluida en el sistema operativo Windows.

Consulte también