Se pierden las referencias a las DLLs

30/07/2003 - 13:28 por Esteve | Informe spam
Hola :

Tengo un proyecto con Visual Basic 6.0 con SP5. Dicho proyecto tiene
referencias a DLLs de otros proyectos.

El problema es que cuando creo un grupo en el que incluyo varios proyectos,
cuando se graba me cambia las referencias que apuntaban a las DLLs por
referencias que apuntan al proyecto. Para clarificar :

Inicialmente en el *.vbp tengo lo siguiente :

Reference=*\G{25BCFC3A-03F1-4873-8F83-743D3CDC44D0}#1.1#0#..\..\DLLs
RPS-Proyectos\RAES01DLLCOMUNI.dll#RAES01DLLCOMUNI
Reference=*\G{0758BFD9-3580-41EC-9722-83A8DCCD5717}#5.0#0#..\..\DLLs
RPS-Proyectos\RAES01DLLERRORES.dll#RAES01DLLERRORES
Reference=*\G{26068FC5-A413-4C72-9EEC-4EBC9F103790}#2.2#0#..\..\DLLs
RPS-Proyectos\RAES01DLLPROYECTOS.dll#RAES01DLLPROYECTOS
Reference=*\G{077B4EA5-0F5F-4AF3-82FF-85D699F96862}#1.0#0#..\..\DLLs
RPS-Proyectos\RAES01DLLTRACOM.dll#RAES01DLLTRACOM

Cuando grabo desde el grupo de proyectos se convierte en :

Reference=*\A..\VB 120 Tratar Errores\RAES01DLLERRORES.vbp
Reference=*\A..\..\..\..\Proyectos\001-RPS-Proyectos\ZZZ Fuentes\VB 320
Negocio Proyectos\RAES01DLLPROYECTOS.vbp
Reference=*\A..\VB 200 Tratar Comunicacion\RAES01DLLTRACOM.vbp
Reference=*\G{25BCFC3A-03F1-4873-8F83-743D3CDC44D0}#1.1#0#..\..\..\..\Proyec
tos\001-RPS-Proyectos\DLLs RPS-Proyectos\RAES01DLLCOMUNI.dll#RAES01DLLCOMUNI



Sabeis como se puede evitar que cambie la referencia a las dlls por la
referencia a los vbp ?

Gracias por anticipado

Un saludo
Esteve

Preguntas similare

Leer las respuestas

#1 Softjaen
30/07/2003 - 21:06 | Informe spam
"Esteve" escribió:


Tengo un proyecto con Visual Basic 6.0 con SP5. Dicho proyecto tiene
referencias a DLLs de otros proyectos.

El problema es que cuando creo un grupo en el que incluyo varios
proyectos, cuando se graba me cambia las referencias que apuntaban
a las DLLs por referencias que apuntan al proyecto.




Hola, Esteve:

Por ejemplo, y para que todos nos enteremos. Imagínate que tenemos un grupo
de proyectos formado por un proyecto EXE y un proyecto DLL ActiveX. El
proyecto DLL ActiveX, lo has compilado anteriormente, creando la oportuna
biblioteca DLL, por lo que dicha biblioteca ya está registrada en tu
sistema.

Posteriormente has abierto sólo el proyecto EXE y has referenciado la
biblioteca que tienes registrada en tu sistema, guardando los cambios en el
archivo *.vbp del proyecto EXE.

Si el proyecto EXE tiene referencias a la biblioteca DLL ActiveX, que tienes
debidamente registrada en tu sistema, no tiene por qué cambiarte ningún tipo
de referencias cuando guardes los cambios desde el grupo de proyectos
actualmente abierto en el IDE de Visual Basic.

Por el contrario, si al abrir el grupo de proyectos le cambias las
referencias al proyecto EXE y le asignas las referencias del proyecto DLL
ActiveX, (no las referencias de la biblioteca ya compilada y registrada en
tu sistema), cuando guardes el grupo de proyectos, lógicamente el archivo
*.vbp, del proyecto EXE, guardará las nuevas referencias indicadas.

Sabeis como se puede evitar que cambie la referencia a las dlls por la
referencia a los vbp ?



No indicándole al proyecto EXE las referencias de los proyectos DLL ActiveX
que tienes conjuntamente abiertos en el grupo de proyectos.

No sé si he sido claro. :-)

Un saludo.

Enrique Martínez
[MS MVP - VB]
Respuesta Responder a este mensaje
#2 Esteve
30/07/2003 - 21:50 | Informe spam
Hola Enrique :

Voy a intentar clarificarte lo que me ocurre :
- Tengo varios proyectos que generan distintas Dlls
- tengo un proyecto que crea un OCX y que tiene referencias a las Dlls
anteriores
- tengo un grupo de proyectos que contiene al OCX y a las distintas
librerias, y que utilizo para depurar todos los proyectos de manera
conjunta.
- cuando cargo solo el proyecto del OCX apunta correctamente a las dlls
- el problema ocurre cuando cargo el grupo de proyectos y compilo el
proyecto del OCX. Cuando salgo me dice si quiero grabar los cambios y lo que
hace es cambiar las referencias de las dlls a los proyecto vbp respectivos,
es decir, yo no cambio ninguna referencia sino que lo cambia automáticamente
VB cuando compilo desde el grupo de proyectos.
- Esto último de que ocurre al compilar me he dado cuenta recientemente, es
decir si no recompilo el ocx desde el grupo de proyectos no se alteran las
referencias.

Gracias por anticipado.

Un saludo
Esteve

"Softjaen" escribió en el mensaje
news:
"Esteve" escribió:

>
> Tengo un proyecto con Visual Basic 6.0 con SP5. Dicho proyecto tiene
> referencias a DLLs de otros proyectos.
>
> El problema es que cuando creo un grupo en el que incluyo varios
> proyectos, cuando se graba me cambia las referencias que apuntaban
> a las DLLs por referencias que apuntan al proyecto.
>

Hola, Esteve:

Por ejemplo, y para que todos nos enteremos. Imagínate que tenemos un


grupo
de proyectos formado por un proyecto EXE y un proyecto DLL ActiveX. El
proyecto DLL ActiveX, lo has compilado anteriormente, creando la oportuna
biblioteca DLL, por lo que dicha biblioteca ya está registrada en tu
sistema.

Posteriormente has abierto sólo el proyecto EXE y has referenciado la
biblioteca que tienes registrada en tu sistema, guardando los cambios en


el
archivo *.vbp del proyecto EXE.

Si el proyecto EXE tiene referencias a la biblioteca DLL ActiveX, que


tienes
debidamente registrada en tu sistema, no tiene por qué cambiarte ningún


tipo
de referencias cuando guardes los cambios desde el grupo de proyectos
actualmente abierto en el IDE de Visual Basic.

Por el contrario, si al abrir el grupo de proyectos le cambias las
referencias al proyecto EXE y le asignas las referencias del proyecto DLL
ActiveX, (no las referencias de la biblioteca ya compilada y registrada en
tu sistema), cuando guardes el grupo de proyectos, lógicamente el archivo
*.vbp, del proyecto EXE, guardará las nuevas referencias indicadas.

> Sabeis como se puede evitar que cambie la referencia a las dlls por la
> referencia a los vbp ?

No indicándole al proyecto EXE las referencias de los proyectos DLL


ActiveX
que tienes conjuntamente abiertos en el grupo de proyectos.

No sé si he sido claro. :-)

Un saludo.

Enrique Martínez
[MS MVP - VB]












Respuesta Responder a este mensaje
#3 Softjaen
30/07/2003 - 22:26 | Informe spam
"Esteve" escribió:

- cuando cargo solo el proyecto del OCX apunta correctamente a
las dlls
- el problema ocurre cuando cargo el grupo de proyectos y compilo el
proyecto del OCX. Cuando salgo me dice si quiero grabar los cambios
y lo que hace es cambiar las referencias de las dlls a los proyecto vbp
respectivos, es decir, yo no cambio ninguna referencia sino que lo
cambia automáticamente VB cuando compilo desde el grupo de proyectos.



Esteve. Lo mismo da que tú modifiques manualmente las referencias de los
proyectos (menú Proyecto --> Referencias), cosa ésta que parece ser que no
haces, o que contestes «Sí» cuando Visual Basic te pregunte si deseas
guardar los cambios efectuados. ¡Tanto monta como monta tanto! ;-)

Cuando VB te pregunte si deseas guardar los cambios, procura que no esté
seleccionado el archivo de proyecto (*.vbp), porque de lo contrario, al
contestar «Sí», modificará las referencias a las bibliotecas utilizadas.
Para ello, cuando te aparezca el cuadro de diálogo, quita la selección
pulsando con el ratón sobre el archivo de proyecto «*.vbp» donde no deseas
guardar los cambios efectuados.

Si necesariamente tienes que guardar algún cambio en el archivo de proyecto,
abre de nuevo en solitario dicho proyecto y restaura las referencias que
tenías asignadas, seleccionando las DLLs que tenías referenciadas con
anterioridad. No se me ocurre otra cosa.

Enrique Martínez
[MS MVP - VB]
Respuesta Responder a este mensaje
#4 Esteve
30/07/2003 - 22:34 | Informe spam
Hola de nuevo Enrique :

El tema de no grabar los cambios , el problema es que si estando debugeando
el programa y haces cambios en el código ¿ como haces para guardar los
cambios y que no te cambie las referencias ?

El problema de cuando se cambian las referencias es que volver a rehacerlas
es bastante molesto.

¿ Pero no se puede considerar que es un error de VB el que te cambie las
referencias ?. ¿ o por el contrario crees que es un comportamiento
documentado de Visual Basic ?.

Un saludo
Esteve


"Softjaen" escribió en el mensaje
news:

"Esteve" escribió:

> - cuando cargo solo el proyecto del OCX apunta correctamente a
> las dlls
> - el problema ocurre cuando cargo el grupo de proyectos y compilo el
> proyecto del OCX. Cuando salgo me dice si quiero grabar los cambios
> y lo que hace es cambiar las referencias de las dlls a los proyecto vbp
> respectivos, es decir, yo no cambio ninguna referencia sino que lo
> cambia automáticamente VB cuando compilo desde el grupo de proyectos.

Esteve. Lo mismo da que tú modifiques manualmente las referencias de los
proyectos (menú Proyecto --> Referencias), cosa ésta que parece ser que no
haces, o que contestes «Sí» cuando Visual Basic te pregunte si deseas
guardar los cambios efectuados. ¡Tanto monta como monta tanto! ;-)

Cuando VB te pregunte si deseas guardar los cambios, procura que no esté
seleccionado el archivo de proyecto (*.vbp), porque de lo contrario, al
contestar «Sí», modificará las referencias a las bibliotecas utilizadas.
Para ello, cuando te aparezca el cuadro de diálogo, quita la selección
pulsando con el ratón sobre el archivo de proyecto «*.vbp» donde no deseas
guardar los cambios efectuados.

Si necesariamente tienes que guardar algún cambio en el archivo de


proyecto,
abre de nuevo en solitario dicho proyecto y restaura las referencias que
tenías asignadas, seleccionando las DLLs que tenías referenciadas con
anterioridad. No se me ocurre otra cosa.

Enrique Martínez
[MS MVP - VB]




Respuesta Responder a este mensaje
#5 Esteve
30/07/2003 - 22:38 | Informe spam
Hola de nuevo Enrique :

El tema de no grabar los cambios , el problema es que si estando debugeando
el programa y haces cambios en el código ¿ como haces para guardar los
cambios y que no te cambie las referencias ?

El problema de cuando se cambian las referencias es que volver a rehacerlas
es bastante molesto.

¿ Pero no se puede considerar que es un error de VB el que te cambie las
referencias ?. ¿ o por el contrario crees que es un comportamiento
documentado de Visual Basic ?.

Un saludo
Esteve
"Softjaen" escribió en el mensaje
news:

"Esteve" escribió:

> - cuando cargo solo el proyecto del OCX apunta correctamente a
> las dlls
> - el problema ocurre cuando cargo el grupo de proyectos y compilo el
> proyecto del OCX. Cuando salgo me dice si quiero grabar los cambios
> y lo que hace es cambiar las referencias de las dlls a los proyecto vbp
> respectivos, es decir, yo no cambio ninguna referencia sino que lo
> cambia automáticamente VB cuando compilo desde el grupo de proyectos.

Esteve. Lo mismo da que tú modifiques manualmente las referencias de los
proyectos (menú Proyecto --> Referencias), cosa ésta que parece ser que no
haces, o que contestes «Sí» cuando Visual Basic te pregunte si deseas
guardar los cambios efectuados. ¡Tanto monta como monta tanto! ;-)

Cuando VB te pregunte si deseas guardar los cambios, procura que no esté
seleccionado el archivo de proyecto (*.vbp), porque de lo contrario, al
contestar «Sí», modificará las referencias a las bibliotecas utilizadas.
Para ello, cuando te aparezca el cuadro de diálogo, quita la selección
pulsando con el ratón sobre el archivo de proyecto «*.vbp» donde no deseas
guardar los cambios efectuados.

Si necesariamente tienes que guardar algún cambio en el archivo de


proyecto,
abre de nuevo en solitario dicho proyecto y restaura las referencias que
tenías asignadas, seleccionando las DLLs que tenías referenciadas con
anterioridad. No se me ocurre otra cosa.

Enrique Martínez
[MS MVP - VB]




email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida