none
Exchange 2016 Owa not working because of _old.dll RRS feed

  • Question

  • Hello,

    we got a Exchange 2016 Server, because of the big attack we installed the CU Update 19 (Mrz21SU).

    The first problem was we did not run it over cmd as admin, so it stopped and we let the setup rollback all changes, but sadly it did not do a good job.

    After the update only the owa was not working (and the offline adressbook but i guess that not related right now), if you login in owa you get the blue exchange "something went wrong"- page.

    I tried many solution from microsoft/google, where each forum posted these common solutions, but i guess my case is special. 

    What i noticed if you log into owa, on exchange server the event display shows up with warning/error unter application with a configuration error. (And no updatecas1.ps1 did not help)

    If you look closer on this error you can read out it tries to open a missing dll called "Microsoft.Exchange.Clients.Strings_old.dll". After a quicksearch into the exchange folder with "_old" i found serval dll's with ending _old (only in the ClientSettings\Owa folder). In the same folder is newer DLL without the "_old". 

    So i guess my exchange is using a old DLL for my owa, even if the sharedconfig file does not contain any "_old" file. Can i safely delete them and do a iis reset/restart ?

    Or will i have further trouble since i read online there is something called GAC where windows is keeping all running DLL's.

    (Process Explorer did not show any "_old" DLL's")

    Error in event display (Translated into English):

    Event code: 3008 
    Event message: A configuration error has occurred. 
    Time of event: 06/16/2021 10:36:12 
    Time of event (UTC): 06/16/2021 08:36:12 
    Ereignis-ID: b4127aa3ba914ce69bc520d3a4953490 
    Sequence of events: 1 
    Event Event: 1 
    Event detail code: 0 
     
    Application Information: 
        Anwendungsdomäne: /LM/W3SVC/2/ROOT/owa-3740-132XXX061704589067 
        Trust level: Full 
        Application virtual path: /owa 
        Application path: SecoundDrive:\Exchange 2016\ClientAccess\owa 
        Machine name: myExchangeServer 
     
    Process information: 
        Process ID: 15776 
        Process name: w3wp.exe 
        Account name: NT-AUTHORITY\SYSTEM 
     
    Exception information: 
        Exception type: ConfigurationErrorsException 
        Exception message: The file or assembly "Microsoft.Exchange.Clients.Strings_old" or a dependency on it was not found. The found manifest definition of the assembly does not match the assembly reference. (Exception of HRESULT: 0x80131040)
       at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective)
       at System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory()
       at System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai)
       at System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig)
       at System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies()
       at System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath, Boolean& isRefAssemblyLoaded)
       at System.Web.Compilation.BuildManager.ExecutePreAppStart()
       at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException)
    
    The file or assembly "Microsoft.Exchange.Clients.Strings_old" or a dependency on it was not found. The found manifest definition of the assembly does not match the assembly reference. (Exception of HRESULT: 0x80131040)
       on System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
       for System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
       for System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection)
       for System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
       for System.Reflection.Assembly.Load(String assemblyString)
       At System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective).
    
     
     
    Request information: 
        Query URL: https://myExchangeServer.myDomain.local:port/owa/ 
        Query path: /owa/ 
        Benutzer-Host-Adresse: XXXXX
        User:  
        Is authenticated: Incorrect 
        Authentication type:  
        Thread Account Name: NT-AUTHORITY\SYSTEM. 
     
    Thread Information: 
        Thread ID: 37 
        Thread account name: NT AUTHORITY SYSTEM. 
        Is impersonal: False 
        Stack trace: at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective)
       at System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory()
       at System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai)
       at System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig)
       at System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies()
       at System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath, Boolean& isRefAssemblyLoaded)
       at System.Web.Compilation.BuildManager.ExecutePreAppStart()
       at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException)
     
     
    Custom event details: 





    Wednesday, June 16, 2021 8:43 AM