web-dev-qa-db-fra.com

Erreur Crystal Reports lors du déploiement. Impossible de charger le fichier ou l'assistant log4net.

S'il vous plaît aider. J'ai une application Web qui a été construite dans VS2010 et nous utilisons le plugin CR pour 2010 et tout fonctionne parfaitement sur nos machines locales. Lorsque nous déployons l'application Web sur Server 2008, l'application fonctionne correctement jusqu'à ce que nous essayions d'obtenir un rapport. Lorsque nous arrivons à un rapport, nous recevons ...

Could not load file or Assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' or one of its dependencies. The system cannot find the file specified. 

Nous avons installé les runtimes CR2010 et le fichier log4net.dll version 1.2.10.0 est dans le GAC, nous ne le référençons donc pas dans l'application. Lorsque nous l'ajoutons à titre de référence, nous obtenons cette erreur, peu importe où nous en sommes dans l'application, pas seulement sur les pages du rapport. S'il vous plaît aider!

27
EvanGWatkins

J'ai reçu le même message d'erreur après avoir installé accidentellement la version x86 des rapports Crystal redist sur une machine x64.

L'installation du correctif x64 correct a résolu le problème - http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_redist_install_64bit_13_0.Zip

20
user639614

Nous venons tout juste de rencontrer le même problème et il s’est avéré que ce n'était pas (dans notre cas) la version de Crystal Reports Redist (nous avons installé les versions 32 bits sur nos machines 64 bits. 

Accédez à votre répertoire virtuel Pool d'applications -> Paramètres avancés -> Définissez Enable 32-Bit Applications sur True 

et changé le mode de pipeline géré de classique à intégré. Après cela, nous n’avons plus d’erreur de la DLL manquante log4net.

19
Matt Palmerlee

Si vous avez une machine de développement x86 et que votre serveur Web est une machine 64 bits, vous pouvez peut-être rencontrer le problème discuté ici:

http://social.msdn.Microsoft.com/Forums/en-US/vscrystalreports/thread/546059a6-7179-4027-8f16-822ac6dc189a/

Visual Studio déploie automatiquement un fichier log4net.dll 32 bits sur le serveur Web 64 bits, même s'il n'est pas référencé dans votre projet. Supprimez simplement le fichier log4net.dll de votre répertoire bin une fois le déploiement terminé car il n’est pas réellement requis par le moteur d’exécution CR pour fonctionner.

4
Dani Carbonell

Nous avons également eu le même problème avec le redistribuable 64 bits installé. Dans notre cas, nous avons défini le paramètre "Activer les applications 32 bits" sur FALSE dans les propriétés avancées du pool d'applications et résolu le problème. 

3
Alan Samet

Pour moi, j’avais un projet d’application VB et dans les options de compilation, j’avais sélectionné "Tout processeur" pour Cible cible et j’avais également coché la case "Préférer 32 bits". Lorsque l'application compilée était exécutée sur une machine 64 bits sur laquelle le runtime x64 était uniquement installé, elle pouvait se bloquer avec cette erreur, car elle tentait de s'exécuter en tant qu'application 32 bits et souhaitait l'exécution 32 bits. Décocher cette option et la recompiler l'a fait fonctionner correctement.

1

Résolu mes problèmes.

J'ai 2 serveurs NLB 2008 R2, mes IIS sont configurés pour fonctionner en x32.

Dans un serveur, j'ai installé le redist SAP x64 et x32 et j'ai l'erreur, dans le second serveur, seul le x32 et fonctionne.

Pour que le premier serveur fonctionne, j'ai désinstallé toutes les versions et réinstallé uniquement x32, mais le démarrage du serveur ne fonctionne qu'après un redémarrage.

Au revoir

0
Fiorebat