Visual Basic - Diferencia entre Proyectos DLLs cargados y Referen

Life is soft - evento anual de software empresarial
 
Vista:

Diferencia entre Proyectos DLLs cargados y Referen

Publicado por Javier (4 intervenciones) el 25/10/2007 08:56:11
Hola,
estoy desarrollando un proyecto que consta de varias DLLs.Estas DLLs son propias,esto es, desarrolladas por mi, por lo que para ejecutar la aplicación puedo poner referencias a estas DLLs o bien cargarlas dentro de un grupo de proyectos.
Ejemplo de grupo de proyecto

Proyecto EXE
Proyecto DLL1
Proyecto DLL2

En el código del proyecto Exe dispongo de un montón de clases que contienen otras clases hijas que están definidas en los proyectos DLLs.
Ejemplo de jerarquía de clases:
Proyecto EXE. Clase1 (Padre)
Proyecto DLL1.Clase2(Hija)
Proyecto DLL2.Clase3(Hija)

Mi problema viene cuando cargo el grupo de proyectos(EXE + DLL1 + DLL2) y compilo. En la declaración de objetos que son de tipo "Clase1" o "Clase2", esto es, que pertenecen a las DLLs, me da un error diciéndome que el tipo no está definido por el usuario.
Las referencias del Proyecto EXE a las librerías cambian y en lugar de apuntar a un fichero DLL apuntan a un fichero .VBP(Proyecto DLL1.vbp y Proyecto DLL2.vbp) que tengo cargados, pero me da el error.
Por el contrario si quito los proyectos DLL del grupo de proyectos y las referencias del Proyecto EXE apuntan a las DLLs compiladas, este error no se da.

Además, he comprobado que si a la declaración de los objetos de tipo Clase1 y Clase2 le antepongo el nombre de la librería (ProyectoDLL1.Clase1 ó ProyectoDLL2.Clase2) el error que me da al compilar cuando tengo el grupo de proyectos cargados al completo, ya no sucede.

Me gustaría saber cuál es el problema exactamente, ya que cuando dentro de una clase del Proyecto EXE voy a declarar un variable de tipo "Clase2", al escribir "Dim MiObjeto as..."
me aparece entre las opciones de tipos de variables la propia "Clase2" que luego me da el error de compilación.

Espero que se entienda el problema.
¿Puede estar relacionado con el registro de las DLLs y la incompatibilidad entre versiones(o algo así)?

Muchas gracias¡
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder