2010-11-16 15 views
11

Tengo un ensamblado .NET de 32 bit y 64 bit de un proveedor. Tienen exactamente las mismas interfaces en ellos (mismas clases, mismos métodos, etc.)Diferentes referencias de ensamblado .NET según 32-64 bit

Por alguna razón, nunca puedo ejecutar un tipo en la otra plataforma. Lo que he estado haciendo hasta ahora es simplemente eliminar las referencias y luego volver a compilar según corresponda.

¿Hay una manera más simple de hacer esto?

EDITAR

estaba pensando SVN podría ser cooptados para resolver esto de alguna manera?

EDITAR

Los conjuntos no están en GAC. Y también, surge la necesidad porque estoy construyendo el mismo programa en ambas plataformas, en lugar de intentar ejecutar algo construido en una plataforma en el otro.

Respuesta

1

No puede tener la misma aplicación utilizando conjuntos de mixt. Puede usar solo el mismo tipo de ensamblaje x86 o x64.

No se puede ejecutar la aplicación x64 en el sistema operativo de 32 bits pero de otro modo es posible.

1

Indique a su proveedor que compile con el indicador AnyCPU y abstraiga todas sus llamadas internas dependientes de la plataforma programáticamente en lugar de pedirle al consumidor que lo haga por ellas.

Si no lo hacen, podría escribir su propio proxy utilizando la reflexión, pero no lo recomiendo. Mantener ese componente con el tiempo sería un dolor.

+0

Ese segundo EDITAR ("Estoy construyendo el mismo programa en ambas plataformas") era importante; invalida mi desarrollador RAWR momento;) – xcud

Cuestiones relacionadas