FAQ TBarCode .NET
Exception Bad Image Format après le déploiement d'une application Web
Exception Bad Image Format après le déploiement d'une application Web
Ce qui suit s'applique aux versions de TBarCode .NET antérieures à 11.15.
Vous obtenez une System.BadImageFormatException (a tenté de charger un programme dans un format incorrect) après avoir déployé votre projet ASP.NET sur votre serveur Web IIS. Pendant le développement, ce problème ne s'est pas produit.
Raison : Visual Studio est une application 32 bits et le serveur de développement s'exécute généralement en processus 32 bits. Par conséquent, la version 32 bits de TECIT.TBarCode.DLL a été intégrée à votre projet et fait maintenant partie de votre dossier ./bin. Mais votre IIS exécute le thread de travail en processus 64 bits, et charge maintenant le mauvais format.
Option n° 1 : déployer la version 64 bits de l'assembly
Utilisez la version du dossier C:\Program Files\Common Files\TEC-IT\TBarCode\[version] (il s'agit de la version x64). Remplacez le fichier ../bin/TECIT.TBarCode.dll sur votre système cible par cette version.
Option n° 2 : laisser le GAC faire le travail
Supprimez complètement le fichier TECIT.TBarCode.dll de votre dossier bin. Dans ce cas, TECIT.TBarCode.dll sera chargé depuis le cache global d'assemblies (GAC). Le common language runtime charge automatiquement la bonne version car le GAC contient les deux versions, 32 et 64 bits. Prérequis : le programme d'installation de TBarCode SDK doit être exécuté sur le serveur cible ; l'installation installe les DLL dans le GAC pour vous.