Nous avons une ferme de serveurs Web à 3 serveurs exécutant une application ASP.Net 3.5 sur IIS6, Windows Server 2003. Nous venons d'installer une mise à jour de l'application, et deux des trois serveurs fonctionnaient bien, mais le troisième a immédiatement commencé à avoir des problèmes. En essayant de démarrer le site Web, nous voyons cette exception dans les journaux :
System.IO.FileLoadException: Impossible de charger le fichier ou l'assembly 'System.EnterpriseServices.Wrapper.dll' ou l'une de ses dépendances. Cette application n'a pas pu démarrer car la configuration de l'application est incorrecte. La réinstallation de l'application peut résoudre ce problème. (Exception de HRESULT : 0x800736B1)
Nom de fichier : 'System.EnterpriseServices.Wrapper.dll' ---> System.Runtime.InteropServices.COMException (0x800736B1) : Cette application n'a pas pu démarrer car la configuration de l'application est incorrecte. La réinstallation de l'application peut résoudre ce problème. (Exception de HRESULT : 0x800736B1)
at System.Reflection.Assembly._nGetModules(Boolean loadIfNotFound, Boolean getResourceModules)
at System.Reflection.Assembly.nGetModules(Boolean loadIfNotFound, Boolean getResourceModules)
at System.Reflection.Assembly.GetTypes()
at System.Web.Mvc.ControllerTypeCache.GetAllControllerTypes(IBuildManager buildManager)
at System.Web.Mvc.ControllerTypeCache.EnsureInitialized(IBuildManager buildManager)
at System.Web.Mvc.DefaultControllerFactory.GetControllerTypeWithinNamespaces(String controllerName, HashSet`1 namespaces)
at System.Web.Mvc.DefaultControllerFactory.GetControllerType(String controllerName)
at System.Web.Mvc.DefaultControllerFactory.CreateController(RequestContext requestContext, String controllerName)
at System.Web.Mvc.MvcHandler.ProcessRequest(HttpContextBase httpContext)
at System.Web.Mvc.MvcHandler.ProcessRequest(HttpContext httpContext)
at System.Web.Mvc.MvcHandler.System.Web.IHttpHandler.ProcessRequest(HttpContext httpContext)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
et à partir de là :
System.Runtime.InteropServices.COMException (0x800736B1) : Cette application n'a pas pu démarrer car la configuration de l'application est incorrecte. La réinstallation de l'application peut résoudre ce problème. (Exception de HRESULT : 0x800736B1)
at System.Reflection.Assembly._nGetModules(Boolean loadIfNotFound, Boolean getResourceModules)
at System.Reflection.Assembly.nGetModules(Boolean loadIfNotFound, Boolean getResourceModules)
at System.Reflection.Assembly.GetTypes()
at System.Web.Mvc.ControllerTypeCache.GetAllControllerTypes(IBuildManager buildManager)
at System.Web.Mvc.ControllerTypeCache.EnsureInitialized(IBuildManager buildManager)
at System.Web.Mvc.DefaultControllerFactory.GetControllerTypeWithinNamespaces(String controllerName, HashSet`1 namespaces)
at System.Web.Mvc.DefaultControllerFactory.GetControllerType(String controllerName)
at System.Web.Mvc.DefaultControllerFactory.CreateController(RequestContext requestContext, String controllerName)
at System.Web.Mvc.MvcHandler.ProcessRequest(HttpContextBase httpContext)
at System.Web.Mvc.MvcHandler.ProcessRequest(HttpContext httpContext)
at System.Web.Mvc.MvcHandler.System.Web.IHttpHandler.ProcessRequest(HttpContext httpContext)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Jusqu'à présent, j'ai essayé :
- Redémarrer IIS
- Redémarrer le serveur
- Réinstaller le framework .net
- Copier EnterpriseServices.dll et EnterpriseServices.Wrapper.dll dans le répertoire html/bin
- Exécuter aspnet_regiis -i
- donne une erreur : La génération du contexte d'activation a échoué pour C:\WINDOWS\assembly\GAC_32\System.Data\2.0.0.0__b77a5c561934e089\System.Data.dll. Message d'erreur de référence : Accès refusé.
Je suis donc un peu bloqué. Des idées ?