Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

iisexpress.exe started crashing with Access Violation in IsLocalRequest call

Tags:

iis-express

with the new 171010-1400 Windows build and Visual Studio Update 4 my previously working config went haywire. As I see from the windbg output, somehow iisexpress.exe fails on the first or the second request, I guess it is in connection with setting a cookie. All I see from the debug is the following:

ModLoad: 00007ff9`417a0000 00007ff9`417cb000   C:\WINDOWS\system32\dwmapi.dll
18312 w3wphost!W3WP_HOST::IncrementMessages [w3wphost.cxx @ 4073]:IncrementMessages called
(4a30.4788): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for C:\Program Files\IIS Express\IISUTIL2.dll - 
IISUTIL2!IsLocalRequest+0x2e:
00007ff9`02766d5e 0fb702          movzx   eax,word ptr [rdx] ds:00000000`00000000=????

Where can I get more information about this IsLocalRequest call? I guess IISExpress.exe is not open source.

Update1: I think the IISUTIL dll is not on the symbols server:

BGHELP: ntdll - public symbols  
        c:\temp\localsymbols\ntdll.pdb\186E113737814D3E2749831F5FE67D621\ntdll.pdb
Symbol search path is: SRV*c:\temp\localsymbols*http://msdl.microsoft.com/download/symbols
Expanded Symbol search path is: srv*c:\temp\localsymbols*http://msdl.microsoft.com/download/symbols

************* Symbol Path validation summary **************
Response                         Time (ms)     Location
Deferred                                       SRV*c:\temp\localsymbols*http://msdl.microsoft.com/download/symbols
SYMSRV:  BYINDEX: 0x16
         c:\temp\localsymbols*http://msdl.microsoft.com/download/symbols
         iisutil2.pdb
         AA5E50675E9E42B0950F0C58B916E2671
SYMSRV:  UNC: c:\temp\localsymbols\iisutil2.pdb\AA5E50675E9E42B0950F0C58B916E2671\iisutil2.pdb - path not found
SYMSRV:  UNC: c:\temp\localsymbols\iisutil2.pdb\AA5E50675E9E42B0950F0C58B916E2671\iisutil2.pd_ - path not found
SYMSRV:  UNC: c:\temp\localsymbols\iisutil2.pdb\AA5E50675E9E42B0950F0C58B916E2671\file.ptr - path not found
SYMSRV:  HTTPGET: /download/symbols/iisutil2.pdb/AA5E50675E9E42B0950F0C58B916E2671/iisutil2.pdb
SYMSRV:  HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND
SYMSRV:  HTTPGET: /download/symbols/iisutil2.pdb/AA5E50675E9E42B0950F0C58B916E2671/iisutil2.pd_
SYMSRV:  HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND
SYMSRV:  HTTPGET: /download/symbols/iisutil2.pdb/AA5E50675E9E42B0950F0C58B916E2671/file.ptr

SYMSRV:  HttpQueryInfo: 80190194 - HTTP_STATUS_NOT_FOUND
SYMSRV:  RESULT: 0x80190194
DBGHELP: C:\Program Files\IIS Express\iisutil2.pdb - file not found
DBGHELP: iisutil2.pdb - file not found
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for C:\Program Files\IIS Express\IISUTIL2.dll - 
DBGHELP: IISUTIL2 - export symbols
like image 597
balint Avatar asked Oct 17 '17 08:10

balint


2 Answers

In my case, the root of the problem was an StackoverflowException. There was no message in my output window which indicated this problem.

like image 164
ˈvɔlə Avatar answered Oct 11 '22 16:10

ˈvɔlə


For historical purposes. This happened to me because there was a code error.

In my case, an attempt to convert from one type to another using the AutoMapper.Mapper.Map(model), but without set the mapping definition. Also this call was made within an implicit operator:

public static implicit operator DestinyType (ModelType model)
{
      return Mapper.Map <DestinyType> (model);
}

My alternative was to use something like:

     public static implicit operator DestinyType (ModelType model)
     {
         var mapper = Mapper.Configuration.FindTypeMapFor <ModelType, DestinyType> ();

         if (mapper == null)
         {
             throw new InvalidOperationException ();
         }

         return Mapper.Map <DestinyType> (model);
     }
like image 44
Gilberto Alexandre Avatar answered Oct 11 '22 17:10

Gilberto Alexandre