250 votos

¿Cómo arreglar el error de "El montaje referido no tiene un nombre fuerte"?

He añadido una asamblea de nombre débil a mi Estudio visual 2005 proyecto (que es fuertemente nombrado). Ahora estoy recibiendo el error:

"El conjunto referenciado 'xxxxxxxx' no tiene un nombre fuerte"

¿Tengo que firmar esta asamblea de terceros?

219voto

0xA3 Puntos 73439

Para evitar este error, tú también podrías:

  • Cargar el conjunto de forma dinámica, o
  • firmar la asamblea de terceros.

Encontrará instrucciones sobre cómo firmar asambleas de terceros en NET-fu: Firmar una asamblea sin firmar (sin firmar con retraso) .

101voto

MrOli3000 Puntos 310

Expandir el archivo de proyecto que es usando el proyecto que no "tiene una clave de nombre fuerte" y busca el archivo .snk (.StrongNameKey).

Navegue a través de este archivo en Explorador de Windows (sólo para que sepas dónde está).

De vuelta en Visual Studio en el proyecto que no "tiene una clave de nombre fuerte", ¿hay

  • Haga clic con el botón derecho del ratón en el archivo del proyecto
  • Seleccione las propiedades
  • Seleccione "Pestaña de firmas" (a la izquierda)
  • Haga clic en la casilla de verificación "Firmar el montaje"
  • Luego, busque el archivo .snk que encontró antes

Eso debería servir. Esto me resolvió un problema para un proyecto usando un formulario dentro de otro proyecto en la misma solución.

Espero que ayude.

63voto

Michal Stefanow Puntos 1223

Estaba buscando una solución al mismo problema y desbloquear las opciones de "cantar el montaje" funciona para mí:

enter image description here

(como pueden notar la captura de pantalla viene de VS2010 pero esperamos que ayude a alguien)

53voto

BrutalDev Puntos 2131

He escrito una herramienta para automatizar los conjuntos de signos fuertes incluyendo aquellos para los que no tienes el código fuente o los proyectos que han sido abandonados. Utiliza muchas de las técnicas descritas en las respuestas de una manera sencilla sin ninguno de los defectos o inconvenientes de las herramientas existentes o de las instrucciones anticuadas.

http://brutaldev.com/post/2013/10/18/NET-Assembly-Strong-Name-Signer

Espero que esto ayude a cualquiera que necesite firmar una asamblea de terceros sin tener que saltar a través de aros para llegar allí.

42voto

Alexandr Nikitin Puntos 2079

Repongo aquí la respuesta del usuario OJ en los comentarios.

"Puedes usar ensamblajes sin firmar si tu ensamblaje también está sin firmar."

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X