locked
Windows Server 2016 .net Application crash RRS feed

  • Question

  • User389487483 posted

    I have recently set up a Windows 2016 Server. I set up my .net application on the server. However, the moment I access the application, the w3wp crashes and shuts down the application pool by itself. Event Viewer gives out 2 errors.

    1) Application: w3wp.exe Framework Version: v4.0.30319 Description: The process was terminated due to an internal error in the .NET Runtime at IP 00007FF8FEDDE899 (00007FF8FEC60000) with exit code 80131506.

    2) Faulting application name: w3wp.exe, version: 10.0.14393.0, time stamp: 0x57899b8a Faulting module name: clr.dll, version: 4.6.1637.0, time stamp: 0x586fe714 Exception code: 0xc0000005 Fault offset: 0x000000000017e899 Faulting process id: 0x1bec Faulting application start time: 0x01d29cca82c75315 Faulting application path: c:\windows\system32\inetsrv\w3wp.exe Faulting module path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll Report Id: 99612f7d-0679-40b3-aa26-d44ca19c44b8 Faulting package full name: Faulting package-relative application ID: Event ID = 1000

    the application is built on .net framework 4.6.1. Since the server is Win 2016 it is shipped with framework 4.6.2. I have installed a test application with .net 4.6.2 framework and an application with 4.6.1 framework (Visual Studio) and they run fine. But my main application gives out the above errors.

    I have executed svc /SCANNOW which has found some corrupt files and successfully repaired them. But this has not helped. IIS version of the server is 10.0.14393.0.

    Any help would be appreciated. Thanks

    Wednesday, March 15, 2017 7:08 AM

All replies

  • User-2057865890 posted

    Hi RANAND,

    Please check whether there are unhandled exceptions in your web application. To handle global scope of application exceptions, you could add Application_Error method in Global.asax file and clear the exception at the end of this method.  Code below is for your reference.

    void Application_Error(object sender, EventArgs e)
    {
      // Code that runs when an unhandled error occurs
    
      // Get the exception object.
      Exception exc = Server.GetLastError();
    
      // Handle HTTP errors
      if (exc.GetType() == typeof(HttpException))
      {
        // The Complete Error Handling Example generates
        // some errors using URLs with "NoCatch" in them;
        // ignore these here to simulate what would happen
        // if a global.asax handler were not implemented.
          if (exc.Message.Contains("NoCatch") || exc.Message.Contains("maxUrlLength"))
          return;
    
        //Redirect HTTP errors to HttpError page
        Server.Transfer("HttpErrorPage.aspx");
      }
    
      // For other kinds of errors give the user some information
      // but stay on the default page
      Response.Write("<h2>Global Page Error</h2>\n");
      Response.Write(
          "<p>" + exc.Message + "</p>\n");
      Response.Write("Return to the <a href='Default.aspx'>" +
          "Default Page</a>\n");
    
      // Log the exception and notify system operators
      ExceptionUtility.LogException(exc, "DefaultPage");
      ExceptionUtility.NotifySystemOps(exc);
    
      // Clear the error from the server
      Server.ClearError();
    }
    

    Best Regards,

    Chris

    Wednesday, March 15, 2017 7:47 AM