Bonjour à tous.

Voici mon cas :

- 1 DLL TOTO.DLL tout en anglais
- 1 fichier TOTO.fr-FR.resx avec les traductions faites maison.

Mon but est de livrer sur mes serveurs de prod une dll TOTO.resources.dll afin d'avoir la traduction dans mes composants.

Voici ce qui est fait :

1) Resgen toto.fr-FR.resx afin de générer un fichier toto.fr-FR.resources
2) sn -e toto.dll StrongName.key pour générer une clé
3) Al.exe /t:lib /toto.fr-FR.resources,toto.Resources.WebDataGridStrings.fr-FR.resources /culture:fr-FR /out:toto.resources.dll /template:toto.dll /keyf:StrongName.key /delay+
4) sn -Vr toto.resources.dll
5) inscription dans le GAC de toto.Resources.dll

Ceci fonctionne en Local sur mon PC. J'ai bien le texte traduit dans mes composants sur mon site web en local.

Mais il y a un souci lors de la livraison. La DLL toto.resources.dll ne peut pas être inscrite dans le gac, l'erreur suivante apparaît

strong name signature verification failed for assembly 'toto.resources.dll'. The Assembly may have been tampered with, ot it was delay signed but not fully signed with the correct private key
J'essaie de comprendre le fonctionnement du GAC, et du système de signature mais je ne vois pas. J'ai l'impression qu'il faut que je fasse l'étape 2 à 4 sur le serveur de déploiement. Mais je ne peux pas.

J'ai tenté de mettre TOTO.Resources.dll directement dans le répertoire bin
mais j'ai cette erreur

Impossible de charger le fichier ou l'assembly 'toto.resources' ou une de ses dépendances. La vérification de la signature de nom fort a échoué. Cet assembly a pu être falsifié ou il est à signature différée, mais pas totalement signé avec la clé privée correcte. (Exception de HRESULT : 0x80131045)


Merci à ceux qui m'aideront