Dos dll con el mismo nombre

31/08/2004 - 23:48 por Oscar | Informe spam
Hola a todos,

Mi proyecto utiliza dos componentes de terceros, y por casualidad ambos componentes utilizan una dll
con el mismo nombre. Osea, que si instalo los dos componentes uno de los dos no funciona, pues la
dll del recién instalado machaca la que ya estaba instalada... De los componentes tengo el código
fuente en c#. Me preguntaba si no podría modificarlos para cambiarle el nombre a una de las dos dll
y que pudiera tener instalados los dos componentes a la vez... sería esto posible? Cómo podría
hacerlo?

Gracias y un saludo,
Oscar

Preguntas similare

Leer las respuestas

#1 Octavio Hernandez
01/09/2004 - 00:36 | Informe spam
Oscar,

¿Son fabricantes "serios" esos terceros? Normalmente a las DLLs se les da
como nombre algo derivado del espacio de nombres que se implemnta en ellas,
con extensión DLL, y el espacio de nombres incluye nombre de empresa y
tecnología para evitar colisiones, por ejemplo
CrystalDecisions.CrystalReports.Engine.dll.

Si tienes los códigos fuentes, bastaría con renombrar el fichero de salida
en los ficheros de proyecto para modificar el nombre de los ensamblados.

Slds - Octavio

"Oscar" <veletapgARROBAwanadooPUNTOcom> escribió en el mensaje
news:
Hola a todos,

Mi proyecto utiliza dos componentes de terceros, y por casualidad ambos


componentes utilizan una dll
con el mismo nombre. Osea, que si instalo los dos componentes uno de los


dos no funciona, pues la
dll del recién instalado machaca la que ya estaba instalada... De los


componentes tengo el código
fuente en c#. Me preguntaba si no podría modificarlos para cambiarle el


nombre a una de las dos dll
y que pudiera tener instalados los dos componentes a la vez... sería esto


posible? Cómo podría
hacerlo?

Gracias y un saludo,
Oscar


Respuesta Responder a este mensaje
#2 Oscar
01/09/2004 - 00:51 | Informe spam
Y eso como se hace?
Supongo que internamente los el código fuente hará referencia la nombre que tiene... no?

Gracias y saludos,

"Octavio Hernandez" escribió en el mensaje
news:
Oscar,

¿Son fabricantes "serios" esos terceros? Normalmente a las DLLs se les da
como nombre algo derivado del espacio de nombres que se implemnta en ellas,
con extensión DLL, y el espacio de nombres incluye nombre de empresa y
tecnología para evitar colisiones, por ejemplo
CrystalDecisions.CrystalReports.Engine.dll.

Si tienes los códigos fuentes, bastaría con renombrar el fichero de salida
en los ficheros de proyecto para modificar el nombre de los ensamblados.

Slds - Octavio

"Oscar" <veletapgARROBAwanadooPUNTOcom> escribió en el mensaje
news:
> Hola a todos,
>
> Mi proyecto utiliza dos componentes de terceros, y por casualidad ambos
componentes utilizan una dll
> con el mismo nombre. Osea, que si instalo los dos componentes uno de los
dos no funciona, pues la
> dll del recién instalado machaca la que ya estaba instalada... De los
componentes tengo el código
> fuente en c#. Me preguntaba si no podría modificarlos para cambiarle el
nombre a una de las dos dll
> y que pudiera tener instalados los dos componentes a la vez... sería esto
posible? Cómo podría
> hacerlo?
>
> Gracias y un saludo,
> Oscar
>
>


Respuesta Responder a este mensaje
#3 Octavio Hernandez
01/09/2004 - 17:15 | Informe spam
El código fuente hace referencia a los nombres de las CLASES y MIEMBROS de
éstas, y no al nombre del ensamblado en sí.
Para cambiar el nombre del ensamblado, entra en las Propiedades del proyecto
y cambia el Nombre del Ensamblado.

Slds - Octavio

-
"Oscar" <veletapgARROBAwanadooPUNTOcom> escribió en el mensaje
news:
Y eso como se hace?
Supongo que internamente los el código fuente hará referencia la nombre


que tiene... no?

Gracias y saludos,

"Octavio Hernandez" escribió en el mensaje
news:
> Oscar,
>
> ¿Son fabricantes "serios" esos terceros? Normalmente a las DLLs se les


da
> como nombre algo derivado del espacio de nombres que se implemnta en


ellas,
> con extensión DLL, y el espacio de nombres incluye nombre de empresa y
> tecnología para evitar colisiones, por ejemplo
> CrystalDecisions.CrystalReports.Engine.dll.
>
> Si tienes los códigos fuentes, bastaría con renombrar el fichero de


salida
> en los ficheros de proyecto para modificar el nombre de los ensamblados.
>
> Slds - Octavio
>
> "Oscar" <veletapgARROBAwanadooPUNTOcom> escribió en el mensaje
> news:
> > Hola a todos,
> >
> > Mi proyecto utiliza dos componentes de terceros, y por casualidad


ambos
> componentes utilizan una dll
> > con el mismo nombre. Osea, que si instalo los dos componentes uno de


los
> dos no funciona, pues la
> > dll del recién instalado machaca la que ya estaba instalada... De los
> componentes tengo el código
> > fuente en c#. Me preguntaba si no podría modificarlos para cambiarle


el
> nombre a una de las dos dll
> > y que pudiera tener instalados los dos componentes a la vez... sería


esto
> posible? Cómo podría
> > hacerlo?
> >
> > Gracias y un saludo,
> > Oscar
> >
> >
>
>


Respuesta Responder a este mensaje
#4 Octavio Hernandez
02/09/2004 - 00:18 | Informe spam
Oscar,

Pensaba que tu problema era solo de nombre de ensamblado, como el título del
post es "dlls con el mismo nombre"...

Si también resulta que las clases se llaman exactamente igual en ambas
librerías, prueba a cambiarles los namespaces por ejemplo añadiendoles un
nivel más. Por ejemplo, agrégale a todos los ficheros fuente de la primera
librería las dos líneas

namespace Lib1 {
// aquí todo lo que había antes
}

Luego haz lo mismo con todos los ficheros del otro proyecto, pero usando el
nombre Lib2:

namespace Lib2 {
// aquí todo lo que había antes
}
En principio al compilar los proyectos te habrás librado del problema. Los
nombres completos de las clases de la primera librería llevarán el prefijo
"Lib1", y los de la segunda "Lib2".

Slds - Octavio

"Oscar" <veletapgARROBAwanadooPUNTOcom> escribió en el mensaje
news:
Y eso como se hace?
Supongo que internamente los el código fuente hará referencia la nombre


que tiene... no?

Gracias y saludos,

"Octavio Hernandez" escribió en el mensaje
news:
> Oscar,
>
> ¿Son fabricantes "serios" esos terceros? Normalmente a las DLLs se les


da
> como nombre algo derivado del espacio de nombres que se implemnta en


ellas,
> con extensión DLL, y el espacio de nombres incluye nombre de empresa y
> tecnología para evitar colisiones, por ejemplo
> CrystalDecisions.CrystalReports.Engine.dll.
>
> Si tienes los códigos fuentes, bastaría con renombrar el fichero de


salida
> en los ficheros de proyecto para modificar el nombre de los ensamblados.
>
> Slds - Octavio
>
> "Oscar" <veletapgARROBAwanadooPUNTOcom> escribió en el mensaje
> news:
> > Hola a todos,
> >
> > Mi proyecto utiliza dos componentes de terceros, y por casualidad


ambos
> componentes utilizan una dll
> > con el mismo nombre. Osea, que si instalo los dos componentes uno de


los
> dos no funciona, pues la
> > dll del recién instalado machaca la que ya estaba instalada... De los
> componentes tengo el código
> > fuente en c#. Me preguntaba si no podría modificarlos para cambiarle


el
> nombre a una de las dos dll
> > y que pudiera tener instalados los dos componentes a la vez... sería


esto
> posible? Cómo podría
> > hacerlo?
> >
> > Gracias y un saludo,
> > Oscar
> >
> >
>
>


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