Interoperabilidade COM em aplicativos .NET Framework (Visual Basic)

Quando você deseja usar objetos COM e objetos .NET Framework no mesmo aplicativo, é necessário resolver as diferenças em como os objetos existem na memória. Um objeto .NET Framework está localizado na memória gerenciada, a memória controlada pelo Common Language Runtime, e pode ser movido pelo runtime conforme necessário. Um objeto COM está localizado na memória não gerenciada e não é esperado que se mova para outro local de memória. O Visual Studio e o .NET Framework fornecem ferramentas para controlar a interação desses componentes gerenciados e não gerenciados. Para obter mais informações sobre o código gerenciado, confira Common Language Runtime.

Além de usar objetos COM em aplicativos .NET, talvez você também queira usar o Visual Basic para desenvolver objetos acessíveis de código não gerenciado por meio de COM.

Os links nesta página fornecem detalhes sobre as interações entre objetos COM e .NET Framework.

Artigo Descrição
Interoperabilidade COM Fornece links para tópicos que abrangem a interoperabilidade COM no Visual Basic, incluindo objetos COM, controles ActiveX, DLLs Win32, objetos gerenciados e herança de objetos COM.
Interoperação com código não gerenciado Descreve brevemente alguns dos problemas de interação entre código gerenciado e não gerenciado e fornece links para mais estudos.
Wrappers COM Discute RCWs (Runtime Callable Wrappers), que permitem que o código gerenciado chame métodos COM Callable Wrappers, que permitem que clientes COM chamem métodos de objeto .NET.
Interoperabilidade COM avançada Fornece links para tópicos que abrangem a interoperabilidade COM em relação a wrappers, exceções, herança, threading, eventos, conversões e marshalling.
Tlbimp.exe (Importador de Biblioteca de Tipos) Discute a ferramenta que você pode usar para converter as definições de tipo encontradas dentro de uma biblioteca de tipos COM em definições equivalentes em um assembly do Common Language Runtime.