2012-09-20 22 views
11

Tengo un proyecto C# que usa un proyecto vb interno como COM.Carga la clase del registro usando COM funciona con ToolsVersion = "2.0" pero falla con ToolsVersion = "4.0"

Cuando Convertí el proyecto de VS 2010, la siguiente línea Lánzame una excepción:

Set RTCClient_ = New RTCCORELib.RTCClient 

la RTCCore.RTCClient es parte de Microsoft Módulo de combinación para el RTC (RTC API Client 1.2) que se pueden incorporado en la instalación paquete (que en mi caso incluye el EXE).

la RTCCore.RTCClient es la clase que se está registrando en el Registro en virtud HKEY_CLASSES_ROOT\RTCCore.RTCClient

El error que estoy recibiendo es:

ERROR: Automation error
The specified module could not be found. (-2147024770)

pero si me voy a cambiar de csproj y el uso de la línea anterior ToolsVersion="2.0" funciona y puedo obtener el objeto RTCClient.

¿Cuál parece ser el problema?

+1

puede mostrar cómo se llama a su objeto COM desde C# – Cynede

+0

Creo que hay falta de información de su pregunta. Por favor aclare qué es RTCCORELib.RTCClient; confirmar si el proyecto VB implementa un servidor COM; y explica el papel del proyecto C# y cómo se relaciona específicamente con este código VB. –

+0

"confirme si el proyecto VB implementa un servidor COM, y explique el rol del proyecto C# y cómo se relaciona específicamente con este código VB" - Todavía no veo esto en su pregunta editada. –

Respuesta

1

Intente configurar Incrustar tipos de interoperabilidad en false en las propiedades de la referencia a su biblioteca COM en el proyecto. El mío es C#, pero tu VB.Net puede tenerlo también.

Properties window

Cuestiones relacionadas