However if I run from IIS Express (32 bit) with a 32 bit ISAPI DLL, and madexcept is enabled in my dll, I get an access violation/crash at startup with this callstack, in the context of
Code: Select all
function InterceptServerSupportFunction(hConn, request: dword; buf, size, dataType: PAnsiChar) : bool; stdcall; // intercept the ISAPI function "ServerSupportFunction"
First chance exception at $77EBF2A3. Exception class $C0000005 with message 'access violation at 0x77ebf2a3: write of address 0x00000004'. Process iisexpress.exe (14680)
ecb2^.ServerSupportFunction := InterceptServerSupportFunction;
>EnterCriticalSection(IRSection^);
:77ebf2a3 ntdll.RtlEnterCriticalSection + 0x13
madExcept.InterceptHttpExtensionProc($CC2904)
:5020a842 ; C:\Program Files (x86)\IIS Express\isapi.dll
:50211707 ; C:\Program Files (x86)\IIS Express\isapi.dll
:50209659 ; C:\Program Files (x86)\IIS Express\isapi.dll
:502099e7 ; C:\Program Files (x86)\IIS Express\isapi.dll
:50786ee4 ; C:\Program Files (x86)\IIS Express\iiscore.dll
:50786133 ; C:\Program Files (x86)\IIS Express\iiscore.dll
:50774f54 ; C:\Program Files (x86)\IIS Express\iiscore.dll
:50787b5e ; C:\Program Files (x86)\IIS Express\iiscore.dll
:50787526 ; C:\Program Files (x86)\IIS Express\iiscore.dll
:5077979d ; C:\Program Files (x86)\IIS Express\iiscore.dll
:50779d6f ; C:\Program Files (x86)\IIS Express\iiscore.dll
:5d376c11 ; C:\Program Files (x86)\IIS Express\w3dt.dll
:5d377a9b ; C:\Program Files (x86)\IIS Express\w3dt.dll
:5d37614a ; C:\Program Files (x86)\IIS Express\w3dt.dll
:5d0d30be ; C:\Program Files (x86)\IIS Express\W3TP.dll
:5d0d2fcb W3TP.?PostCompletion@THREAD_POOL@@QAEHKP6GXKKPAU_OVERLAPPED@@@Z0@Z + 0x5b
:5d0d1ed7 ; C:\Program Files (x86)\IIS Express\W3TP.dll
:767338f4 KERNEL32.BaseThreadInitThunk + 0x24
:77ee5663 ;
Warren