Have you seen a WebEngine.dll crash with ASP.Net 2.0? Read This…

Lately, I have received quite a few comments concerning a crash in WebEngine.dll when you recycle an application pool running ASP.Net 2.0.

The sheer number of independent users reporting this makes be believe that it is real. If it was individual users, I would think user hallucination (strangely, many users are very good at doing this... 😉 ), but when it comes with numbers and stack traces, I believe it and not mass hysteria.

However, I have yet to reproduce it myself given the provided instructions. One user said that merely making a request to an ASP.Net 2.0 page and then manual recycling the application pool should trigger the event... but that did not happen for me. Some have said that Sharepoint is involved; others see it without Sharepoint; I could not get either to work. The variations go on and on.

My Ask...

At the moment, I am a little short on bandwidth to figure out exactly what sequence results in the crash, so I am asking for some help in coming up with a reliable sequence of instructions that allow anyone to reproduce this crash. Be as detailed as possible. Start from when the OS is installed if you can - the more details of installation steps and in particular any non-default configuration changes (such as joining a domain, installing an application, running anti-virus, running login/configuration scripts, etc), the better. You want reliable, reproducible instructions because that allows a bug to be filed to the right developer to get it fixed.

What does this have to do with IIS7?

Now, the astute reader is probably wondering what ASP.Net 2.0 on IIS6 has anything to do with IIS7, so first let me give a little history of WebEngine.dll...

WebEngine.dll is a native code DLL which ships with ASP.Net 2.0 but also provides the managed code extensibility in IIS7. How it works is basically this:

  • When used by ASP.Net 2.0/IIS6, Application Mappings of aspnet_isapi.dll funnel requests to ASP.Net, and aspnet_isapi.dll is simply a thin shim that calls into WebEngine.dll to create the AppDomains and drives the ASP.Net request pipeline.
  • When used by IIS7, WebEngine.dll is loaded directly as a global module (native code only - see this blog entry for details) to create AppDomains, and it hooks directly into the IIS7 Integrated request Pipeline to provide managed code extensibility as the IIS7 request pipeline is driven.

Since IIS7 is in Windows Vista, and it comes with .Net Framework 2.0, it means that we had to get a foothold for our IIS7-related managed code extensibility and ship it with .Net Framework 2.0 ... which is why you see WebEngine.dll with ASP.Net 2.0 on IIS6 NOW instead of when IIS7 ships with Vista.

Of course, WebEngine.dll is not supposed to crash... and since its primary purpose is for IIS7, I am very interested in determining the cause because it may be an IIS7/Vista issue as well. The association of WebEngine.dll with an yet-to-ship product under active development (IIS7) instead of an already-shipped product under sustained engineering (ASP.Net 2.0) is what will make fixes in it happen faster.

So, if you are seeing crashes in WebEngine.dll with ASP.Net 2.0 NOW, I want to know about it. And if you can provide clear, reliable instructions for reproducing the crash, I thank you ahead of time for improving the quality of ASP.Net 2.0 and IIS7. And you should also thank yourself for getting a pesky issue fixed!


Comments (44)

  1. Steve Hurcombe says:


    Strange you should post this now as we have experienced this with IIS 5 (Windows 2000) and we are experiencing this now with IIS 6 (Windows 2003) this is with ASP.Net 1.1.

    The symptoms are (as happened today).

    1. Update the ASP.Net website in some way. Sometimes this is updating a DLL in the Bin folder. Sometimes just updating an ASPX page (as happened today – but this shouldn’t cause a recycle should it??).

    2. Then wait – anything from half an hour to 12 hours. It does not fail immediately. Maybe new processes are blockedbroken and we are just seeing all the old processes die, when the last one goes it all stops???

    3. IIS will not serve any pages. Everything looks OK on the server – apart from the fact that it’s earily quiet coz it’s not doing anything. It’ll ping, you can remote desktop to it, the event log is fine. Kill w3p.exe processes and they will restart but IIS is still dead.

    The only way to get it back is restart the IIS service.

    Very odd and annoying as it’s unpredictable. I expected to restart ASP.Net by killing the ASP.Net process – but no doesn’t work like that, yet it’s an ASP.Net ‘event’ that triggers it.

    Now this may have nothing to do with your problem here but it may be related. It happens fairly often so would a process memory crash dump help?

    Best regards


  2. Harris says:

    Hi David,

    Could the "personal web server" that ships with Visual Studio 2005 be affected by this potential bug as well?  I remember once, during an hour-long investigation of difference between Cassini and the VS05 Web Server, thinking I found a reference from VS05 Web server and WebEngine.dll.

    Just a thought.



  3. David.Wang says:

    Steve – You are running ASP.Net 1.1, which means we are not talking about the same DLL and hence 99.99999% positive that your issue is unrelated to what I am describing.

    There are infinite number of ways for logical bugs to cause unexpected behavior, so I do not try to relate any two of them together, especially without a stack trace and in different binaries, no less.

    Instead of guessing, I suggest applying basic IIS troubleshooting techniques to directly determine what is going on. For example, what do the various log files, including event log, say. Attach debugger as necessary to view state during problematic time period. Is the issue a crash or not (distinguish this)


    If the issue is within ASP.Net, better forums to discuss the issue would be:

    http://www.asp.net website

    – microsoft.public.dotnet.framework.aspnet newsgroup


  4. David.Wang says:

    Harris – I don’t know, but it would be easy to figure out.

    Have Cassini or the VS05 Personal Web Server running, then run the following command:

    TASKLIST.EXE /M WebEngine.dll

    And see if either of those processes have WebEngine.dll loaded. If they do, then maybe they are affected; otherwise, they are not.


  5. Harris says:


    Thanks for the pointer; here’s my results:

    myPath>tasklist /m webengine.dll

    Image Name                     PID         Modules


    devenv.exe                       3568     webengine.dll

    WebDev.WebServer.EXE  2064      webengine.dll

  6. Stephen Woolhead says:

    I have this on a 2003-SP1 fully patched server.

    Multiple sites and app pools all have this problem.

    I created a new site in IIS, created a new virtual dir in it’s own app pool, created a new web project in vs2005, single default page, compile and published it to the server

    To crash IIS, hit default.aspx and then stop the app pool in the IIS manger and boom.  Letting the app pool time out has same effect.

    ModLoad: 5e380000 5e409000   C:WINDOWSMicrosoft.NETFrameworkv2.0.50727diasymreader.dll

    (10d4.1b8c): CLR exception – code e0434f4d (first chance)

    (10d4.1b8c): C++ EH exception – code e06d7363 (first chance)

    (10d4.1b8c): CLR exception – code e0434f4d (first chance)

    (10d4.1b8c): CLR exception – code e0434f4d (first chance)

    (10d4.1b8c): CLR exception – code e0434f4d (first chance)

    (10d4.1b8c): C++ EH exception – code e06d7363 (first chance)

    (10d4.1b8c): C++ EH exception – code e06d7363 (first chance)

    (10d4.1fd8): Access violation – code c0000005 (first chance)

    First chance exceptions are reported before any exception handling.

    This exception may be expected and handled.

    eax=800703e3 ebx=00000001 ecx=019b2710 edx=019b3a50 esi=006f004c edi=000003e3

    eip=6a2a2fec esp=0139fc20 ebp=000ce4b8 iopl=0         nv up ei ng nz na pe nc

    cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00010282


    6a2a2fec ff560c           call  dword ptr [esi+0xc] ds:0023:006f0058=????????


    s i w at g t l dot b i z


  7. dougste says:

    If you are seeing a crash with a stack like this

    01aafe98 6a2a2fef 0x1f0001

    01aafeb0 79f2f3b0 webengine!CorThreadPoolCompletionCallback+0x35

    01aaff14 79f71123 mscorwks!ThreadpoolMgr::CompletionPortThreadStart+0x406

    01aaffb8 77e66063 mscorwks!ThreadpoolMgr::intermediateThreadProc+0x49

    01aaffec 00000000 kernel32!BaseThreadStart+0x34

    when you run ASP.NET 2.0 on a domain controller try the following:


    When ASP.NET 2.0 is installed the local group IIS_WPG is given special permissions on this key. When the server is a domain controller the IIS_WPG group becomes a domain group (there are no local groups on domain controllers) and the NETWORK SERVICE account cannot be a member of it as it is a BUILTIN account.

    What you will need to do is give the NETWORK SERVICE account specific permissions to that key.

    Start Regedit and navigate to that key.

    Right-click "Names" and select Permissions on the context menu.

    Click Add and enter NETWORK SERVICE, click "Check Names" and click "Ok".

    With NETWORK SERVICE highlighed in the "Groups or User Names" list click "Advanced"

    On the "Advanced Security Settings for Names" dialogue highlight NETWORK SERVICE and click "Edit"

    In the "Permission entry for Names" dialogue check the "Name" box is showing "NETWORK SERVICE" and put check marks against "Query Value", "Set Value", "Create Subkey", "Enumerate Subkeys", "Notify" and "Read Control".

    Click Ok on all the dialogues and close regedit.

    Ensure your application pools are reconfigured to run as NETWORK SERVICE (or at least all the ones you want to be) and restart them

    On subsequent restarts the w3wp.exe crash should not occur.

  8. Matthew says:

    This problem appeared out of nowhere for me.  I am running XP Prof with Visual Studio 2005 Pro.  My ASP.NET 2.0 sites worked great for 6 months and then about a month ago they started crashing.

    Here’s what I am seeing:

    1) The moment I try to bring up the first page of any web application by starting up in debug mode in Visual Studio, I get an IMMEDIATE DNS ERROR type of screen.  If I hit refresh in the web browser that launches, the page will render OR sometimes if I hit refresh in the web browser IIS will crash with this error:

    Faulting application inetinfo.exe, version 5.1.2600.2180, faulting module webengine.dll, version 2.0.50727.42, fault address 0x0000ca76.

    2) If I don’t try to use Visual Studio and try browsing to http:\localhostsomewebsite, the page comes up immediately with the screen that says in big read letters WEB APPLICATION UNAVAILABLE.  If I hit refresh, it spins for a while and then IIS crashes with

    Faulting application inetinfo.exe, version 5.1.2600.2180, faulting module webengine.dll, version 2.0.50727.42, fault address 0x0000ca76.

    3) The only way to make it go away is to uninstall/reinstall every possible thing you can imagine.  VS2005, ASP.NET, Atlas, Hotfixes, etc.  Sometimes that works, sometimes that doesn’t.  Sometimes the problem goes away on it’s own after days on end.  That is, I have no idea what works and what doesn’t.  Sometimes, if I run aspnet_regiis -i  then the problem goes away, sometimes it doesn’t (usually it doesn’t).  Sometimes if I uninstall Atlas, it goes away (usually it doesn’t).  

    4) I am seriously about to kill myself over this problem.  It is simply the most frustrating problem ever to happen to me in development.  I am unable to build even the simpliest 2.0 web application.  No one else that I work with has this problem.  I’ve probably wasted an entire week of work trying to correct it.  

    5) My gut tells me that Atlas is somehow causing the problem.  I ran ASP.NET 2.0 on my machine for 6 months without this problem and it seemed to crop up right after I installed Atlas for the first time.  But I can’t prove it yet.

  9. Matthew says:

    I just completely reinstalled .NET 1.0 and .Net 2.0.  Still blows up.  It brings up the FIRST page in my application – the login page – it takes the normal 20 seconds or so to come up as the site is compiled.  But then when i try to login or go to any other page in the site, it just spins with little or no disk activity until crashing about 30-45 seconds later.  

    This happens with every single ASP.NET 2.0 site.  If I create an empty site with nothing but a single page I can make it happen every single time simply by trying to browse to the site.

  10. Matthew says:

    I forgot to mention, I am running IIS 5.  Please kill me now.  

  11. Glenn says:

    We get a crash one to three times a day.  Since I noticed it, I’ve started using IISDiag and have collected a dump file for analysis. The crash is in trying to access memory at an address that seems like it is probably outside physical memory.

    In w3wp__PID__3212__Date__04_19_2006__Time_11_07_02PM__495__Second_Chance_Exception_C0000005.dmp the module \?C:WINDOWSMicrosoft.NETFrameworkv2.0.50727webengine.dll has caused an access violation exception (0xC0000005) when trying to read from memory location 0x00650068 on thread 15

    Table Of Contents


      Faulting Thread

    Report for w3wp__PID__3212__Date__04_19_2006__Time_11_07_02PM__495__Second_Chance_Exception_C0000005.dmp

    Type of Analysis Performed   Crash Analysis

    Machine Name   WEB-STAGE

    Operating System   Windows Server 2003 Service Pack 1

    Number Of Processors   2

    Process ID   3212

    Process Image   c:WINDOWSsystem32inetsrvw3wp.exe

    System Up-Time   12 day(s) 12:16:15

    Process Up-Time   0 day(s) 09:54:16

    Thread 15 – System ID 5556

    Entry point   mscorwks!Thread::intermediateThreadProc

    Create time   4/19/2006 4:03:15 PM

    Time spent in user mode   0 Days 0:0:0.62

    Time spent in kernel mode   0 Days 0:0:0.46

    Function     Arg 1     Arg 2     Arg 3   Source

    650068     01892710     800703e3     00000000    

    webengine!CorThreadPoolCompletionCallback+35     000003e3     00000000     01893390    

    mscorwks!ThreadpoolMgr::CompletionPortThreadStart+406     00000000     eda68aa0     00000000    

    mscorwks!Thread::intermediateThreadProc+49     0ea862c0     00000000     00000000    

    kernel32!BaseThreadStart+34     79ecafc5     0ea862c0     00000000    

    In w3wp__PID__3212__Date__04_19_2006__Time_11_07_02PM__495__Second_Chance_Exception_C0000005.dmp the module \?C:WINDOWSMicrosoft.NETFrameworkv2.0.50727webengine.dll has caused an access violation exception (0xC0000005) when trying to read from memory location 0x00650068 on thread 15

    Module Information

    Image Name: \?C:WINDOWSMicrosoft.NETFrameworkv2.0.50727webengine.dll   Symbol Type:  PDB

    Base address: 0x6a2a0000   Time Stamp:  Fri Sep 23 05:53:08 2005  

    Checksum: 0x0004a774   Comments:  Flavor=Retail

    COM DLL: False   Company Name:  Microsoft Corporation

    ISAPIExtension: False   File Description:  Microsoft ASP.NET Support DLL

    ISAPIFilter: False   File Version:  2.0.50727.42 (RTM.050727-4200)

    Managed DLL: False   Internal Name:  webengine.dll

    VB DLL: False   Legal Copyright:  © Microsoft Corporation. All rights reserved.

    Loaded Image Name:  webengine.dll   Legal Trademarks:  

    Mapped Image Name:     Original filename:  webengine.dll

    Module name:  webengine   Private Build:  

    Single Threaded:  False   Product Name:  Microsoft® .NET Framework

    Module Size:  304.00 KBytes   Product Version:  2.0.50727.42

    Symbol File Name:  c:symcachewebengine.pdb2EDCD5DD03B24BC4BAD6ACEBA4A4AB972webengine.pdb   Special Build:  &

  12. Paul says:


    Very pleased to hear someone at MS is at last interested in this crash scenario.

    Below is what I get from Debug Diagnostic Tool.

    It occurs when the AppPool recycles and is in WebEngine.dll referencing memory getting an access violoation.

    I have seent he posts about the Names registry settings but this is not a domain controller.

    It is very hard to reproduce this error, a machine either gets it or it does not. Sometimes same hardware and build, different servers have it some do not.



    Type of Analysis Performed   Crash Analysis

    Machine Name   UKXXLON20AP0004

    Operating System   Windows Server 2003 Service Pack 1

    Number Of Processors   2

    Process ID   1836

    Process Image   c:WINDOWSsystem32inetsrvw3wp.exe

    System Up-Time   90 day(s) 23:38:19

    Process Up-Time   0 day(s) 00:08:04

    Thread 8 – System ID 1296

    Entry point   mscorwks!ThreadpoolMgr::intermediateThreadProc

    Create time   21/04/2006 12:06:49

    Time spent in user mode   0 Days 0:0:0.0

    Time spent in kernel mode   0 Days 0:0:0.0

    Function     Arg 1     Arg 2     Arg 3   Source

    webengine!CorThreadPoolCompletionCallback+32     000003e3     00000000     018c31d8    

    mscorwks!ThreadpoolMgr::CompletionPortThreadStart+406     00000000     00000000     f485ad08    

    mscorwks!ThreadpoolMgr::intermediateThreadProc+49     000d3b70     00000000     00000000    

    kernel32!BaseThreadStart+34     79f710dd     000d3b70     00000000    

    WEBENGINE!CORTHREADPOOLCOMPLETIONCALLBACK+32In w3wp__PID__1836__Date__04_21_2006__Time_12_14_49PM__562__Second_Chance_Exception_C0000005.dmp the assembly instruction at webengine!CorThreadPoolCompletionCallback+32 in \?C:WINDOWSMicrosoft.NETFrameworkv2.0.50727webengine.dll from Microsoft Corporation has caused an access violation exception (0xC0000005) when trying to read from memory location 0x006f0058 on thread 8


    Hope you find the answer to this, as whilst it does not adversely affect the running application it is clearly a serious problem within the heart of the .NET 2.0 Framework.



  13. Paul says:


    Sorry, re the above entry from Paul:

    The reason the Process Up time is only around 8 mins is because I was using different timeouts for the app pool recycling to ensure it was actually this that was causing it.

    If I set to 5 mins the error occurs 5 mins after last page hit, if to 10 mins, then crash occurs 10 mins after last page hit. etc etc.

    This one was set to 5 mins and I last used the page about 3 mins into app pool threads lifespan.

    Hope this helps narrow it down



  14. Paul says:

    David, The answer

    The crashes are occurring because of permissions being reset on the following key.


    The ASPNET 2.0 install routine sets this key up correctly, otherwise you would expect to see an error thrown at install tiem but then on some computers the ACLs are overridden by either GPO/Local Security Policy or some other mechanism. This is why it is random or appears to be. And probably why people are finding it so hard to track down.

    I set ACLs for ASPNET and Network Service on this key on Friday and all worked well, the crashes were no more. Then  this morning, the crashes were back, I checked the Reg Key and the ACLs had been reset to default.

    Am currently investigating what is causing this, it does not appear to be GPO.

    Hope this helps.



  15. dougste says:

    Hi Paul

    NETWORK SERVICE not having access to that reg key is definitely one cause of this crash as I commented on the 12th April. We have a KB artticle in progress about this. Normally NETWORK SERVICE has these permissions by virtue of being in the IIS_WPG local group. The only confirmed scenario we have so far where this problem arises is when the server is upgraded to a domain controller and the IIS_WPG group gets upgraded to a domain group (as there are no local groups on a domain controller).  NETWORK SERVICE is not able to be in a domain group as it is a BUILTIN account.

    So if you do figure out why the permissions got changed in your case that would be useful to know.



  16. Paul says:

    Many thanks for the response.

    I have narrowed this down a lot more now. And it was GPO! But a setting not defined in the .inf file I configured them with so could be someone was having a play in AD. Here is my solution.

    I thought at first I had cracked it with aspnet_regiis -i but then a day later the errors were back.

    Checked GPOs and the GPO registry setting on Key MACHINESystem was set to replace any lower ACLs, thus when GPO was pushed, all ACLs where removed from key except those defined in base GPO.

    Reset GPO to inherit to lower keys not replace, reset ACLs on names key, ran gpupdate /force, ran IISRESET just for good measure.

    BINGO, all still working 5 days later.

    Obviously one could set an GPO entry for that specific key and get the same result as long as applied after the MACHINESystem entry. I have other keys in the GPOs that set themselves after the MACHINESystem entry is run, so will look at that next week.

    This was a hard one to track down, as there seems to be no link to GPO at first and you look to other avenues. You assume that .NET 1.1 worked under same GPOs so why not this?

    Anyway, I am a happy bunny today



  17. Paul says:

    Actually, if anyone knows if this is a default setting on the following key.


    Configure this key then

    Replace existing permissions on all subkeys with inhertiable permissions.

    In order to fix this I have changed this to

    Configure this key then

    Propagate inheritable permissions to all subkeys

    And all works well.

    Just wondered, as this might cause issues as some of the apps I host are moving into other domains.



  18. David.Wang says:

    Paul – glad that you got to the bottom of this.

    Now, you do illustrate the point that once a machine joins a domain or becomes a domain controller, GPO and such "automatic" reconfigurations of the machine can be pretty deadly against IIS. Most of the time that I have seen "bizarre" IIS errors/behaviors, they have all come from GPO doing arbitrary "Lockdown" of the machine that ended up breaking IIS in random ways.

    I believe it is not because IIS6 has a lot of dependencies, but rather because most GPO expect a CLIENT usage experience and IIS clearly requires a SERVER usage experience. A lot of the GPOs would lock down the machine assuming servers/services are bad… and then the guy needs to develop against a personal IIS server which basically goes against the GPO’s intent. The resulting breakage makes IIS look bad when in fact the user is broken relative to their GPO. But try telling that to the user! 😉


  19. Bobby says:

    I want to thank dougste for his solution, it solved the problem. Thank you very much.

  20. Vincent says:

    Microsoft PSS fixed our issue using the following kb article:


  21. Owen Blacker says:

    I’m getting WebDev.WebServer.exe crashing all the time at the moment, despite having done a Detect and Repair with Visual Studio 2005, but I guess that’s not so helpful to you?

    Unfortunately, I’m not sure what actually caused the problem but, for the last couple of days (and without having installed anything or changed any registry settings between it working and it not working) every time I try to View in Browser a page in my web project, it launches the Cassini-based server engine, then crashes.

    If it helps, the information displayed in the short form of the error report is:

    AppName: webdev.webserver.exe

    AppVer: 8.0.50727.42

    AppStamp: 4333d6f1

    ModName: kernel32.dll

    ModVer: 5.1.2600.2180

    ModStamp: 411096b4

    fDebug: 0

    Offset: 001eb33

    I had a look at Q918041, as one of these comments suggested, but I don’t have an IIS_WPG group on my machine. I set the Network Service account to have the same privileges on that registry key as the ASPNET account has, but that doesn’t seem to have resolved it.

    If you need to contact me further, I’m owenblacker (at) uswitch (dot) com; feel free to email me.

  22. Owen Blacker says:

    A little more information.

    Most (not all) instances of this problem have two items in the event log (two only have the Error and not the Information):


    Source: .Net Runtime 2.0 Error

    Category: None

    Event ID: 1000

    Description: Faulting application webdev.webserver.exe, version 8.0.50727.42, stamp 4333d6f1, faulting module kernel32.dll, version 5.1.2600.2180, stamp 411096b4, debug? 0, fault address 0x0001eb33.

    Information (up to three minutes later and potentially unrelated):

    Source: .Net Runtime 2.0 Error

    Category: None

    Event ID: 1001

    Description: Bucket 235550748, bucket table 1, faulting application webdev.webserver.exe, version 8.0.50727.42, stamp 4333d6f1, faulting module kernel32.dll, version 5.1.2600.2180, stamp 411096b4, debug? 0, fault address 0x0001eb33.

  23. David.Wang says:

    Owen Blacker – you are seeing a crash in the Cassini-based webserver. This actually has nothing to do with IIS because you are talking about two completely different code-bases.

    Thus, the best way to troubleshoot is to simply attach a debugger onto the webdev.webserver.exe process, trigger the crash, and debug the assembly code. I suspect you are somehow causing ASP.Net to load some HttpModule or HttpHandler that crashes, or maybe ASP.Net is having problems compiling due to changed user permissions. No idea. You need to capture the crash and debug it to figure it out.

    So really, this issue has nothing to do with IIS and is in the realm of general debugging…


  24. Kenny Mann says:

    I’m having it crash as well. DEP also shows up showing something naughty happened. Something of interest, our websites function — but function slowly after a crash. Here is some detailed info…

    Faulting application w3wp.exe, version 6.0.3790.1830, stamp 42435be1, faulting module webengine.dll, version 2.0.50727.42, stamp 4333eca4, debug? 0, fault address 0x00002fec.

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

  25. David.Wang says:

    Kenny – a stack trace is necessary for diagnosis. It seems like one of the known failure patterns so you can search for a KB or contact Microsoft PSS for support.


  26. Dani says:

    this will generate the exception:

    System.Web.Security.FormsAuthenticationTicket t = new System.Web.Security.FormsAuthenticationTicket(txtUser.Text, true, int.MaxValue);

               string usr = System.Web.Security.FormsAuthentication.Encrypt(t);

  27. sinisa says:

    WebEngine crash with following error:

    Faulting application w3wp.exe, version 6.0.3790.3959, stamp 45d6968e, faulting module webengine.dll, version 2.0.50727.210, stamp 45072279, debug? 0, fault address 0x00002fe7.

    W2K3 R2 SP2

    SQL 2005 and 2005 Reporting Services with SP1.

    Production goes down once a day.

    HELP 🙂

  28. Tim says:

    3-4 crashes a day when running on Server 2003 SP1 – Sharepoint Services 3.0

    w3wp.exe 6.0.3790.1830 webengine.dll 2.0.50721.210 00002fe7

  29. sinisa says:

    Still have Webengine.dll crash – interesting is that there is no rule how and when it will crash (at least I can’t point it out…)

    Whole event log (app, system) is blue except this little warning (not error) about asp.net 2.0 web event – which normaly you can misjudge as a minor event.

    I have problems also on W2K3 SP2/SQL2K5 SP2 platform, so it’s not related to hotfixes or SPs – I guess.

    Also I checked all security permissions for acccounts – from dir to registry – still nothing.

    any help appreciated

  30. jag says:

    I’ve been running into the same crashes and it all seemed to start when I installed Sharepoint services 3.0.

    An unistall or a reinstall does not fix the crashes.


    Faulting application w3wp.exe, version 6.0.3790.3959, faulting module webengine.dll, version 2.0.50727.42, fault address 0x00002fec.

  31. trakatelis says:

    Have a try at the following hotfix. It did the work for me.


  32. glenn says:

    with WSUS 3.0 this occurrs at one of my clients.

    without WSUS 3 then no problems

  33. Brad says:

    I am getting this error on a Win2k server box with mixed ASP and ASP.NET applications.  INetInfo.exe is crashing, which takes Exchange POP3 down with it.


  34. Brad says:

    I uninstalled KB923810 and KB933729 and it’s working again.  WTF?  I’m confused 🙁

  35. Brad says:

    Ok, it looks like the WWW Publishing service is stopping.  Any ideas?

  36. Martin Robb says:

    WebEngine.dll has been the source of unhandled exceptions when viewing aspx pages for the last couple of days which would stop IIS. Am using VS2005 on XP SP2 with IIS 5.1 .

    I have used DebugDiag to capture full dumps if they are of interest ?

    The exceptions appeared to be occurring after the Page_Unload event so some issue with Unloading the pages. The logs backed this up as Page_Unload events were written prior to the exception.

    I have reinstalled IIS, reregistered .NET v2.0.50727 with IIS and it seems to have cleared it up.

    If I have the time I might reinstate an IIS configuration that was backed up prior to reinstalling and see if the errors return.

  37. karwan says:

    Hi. i had some project in .net 2005 (Asp.net) and Now i install .net 2008. when i open my website with .net 2005 (I have .net 2005 and 2008 in my system together) 1 error occured : " unable to load webengine.dll".

    and what’s your solution to open my 2005 project in VS.net2005.

    thank you


  38. Todd Mohler says:

    Running: WinXP w/ SP2, ASP.Net 2.0 and Ajax 1.0

    After recent MS security updates to my development machine (pushed by my IS department, may be coincidental), I have begun getting crashes in inetinfo.exe / webengine.dll;

    Unhandled exception at 0x6a2aca76 in inetinfo.exe: 0xC0000005: Access violation reading location 0x00000004.

    Top of Call Stack: webengine!AspNetGetExtensionVersion+0xbcc

    This happens with all my web applications, even a very simple test application I created.

    I have created dumps using DRWTSN32 and ADPlus, both show the same information. Trapping it in VS2005 debugger also shows the same stack. None of these shed any light on the root cause or possible fixes.

    Here is a bit from the dretsn32.log;

    *—-> State Dump for Thread Id 0x44c <—-*

    eax=00000000 ebx=00000000 ecx=01212a54 edx=01212a54 esi=00000001 edi=00000068

    eip=6a2aca76 esp=0159f284 ebp=00000000 iopl=0         nv up ei pl nz na pe nc

    cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000202

    function: webengine!AspNetGetExtensionVersion

           6a2aca44 0cf3             or      al,0xf3

           6a2aca46 2d6ae8680b       sub     eax,0xb68e86a

           6a2aca4b 0000             add     [eax],al

           6a2aca4d 8be8             mov     ebp,eax

           6a2aca4f 3beb             cmp     ebp,ebx

           6a2aca51 7540        jnz webengine!AspNetGetExtensionVersion+0xbe9 (6a2aca93)

           6a2aca53 a110f32d6a       mov     eax,[webengine+0x3f310 (6a2df310)]

           6a2aca58 56               push    esi

           6a2aca59 33f6             xor     esi,esi

           6a2aca5b 395804           cmp     [eax+0x4],ebx

           6a2aca5e 7e1c        jle webengine!AspNetGetExtensionVersion+0xbd2 (6a2aca7c)

           6a2aca60 57               push    edi

           6a2aca61 33ff             xor     edi,edi

           6a2aca63 8b08             mov     ecx,[eax]

           6a2aca65 53               push    ebx

           6a2aca66 03cf             add     ecx,edi

           6a2aca68 e819ffffff call webengine!AspNetGetExtensionVersion+0xadc (6a2ac986)

           6a2aca6d a110f32d6a       mov     eax,[webengine+0x3f310 (6a2df310)]

           6a2aca72 46               inc     esi

           6a2aca73 83c768           add     edi,0x68

    FAULT ->6a2aca76 3b7004           cmp     esi,[eax+0x4]     ds:0023:00000004=????????

           6a2aca79 7ce8         jl webengine!AspNetGetExtensionVersion+0xbb9 (6a2aca63)

           6a2aca7b 5f               pop     edi

           6a2aca7c 53               push    ebx

           6a2aca7d 53               push    ebx

           6a2aca7e 6814132a6a       push    0x6a2a1314

           6a2aca83 891d00f32d6a     mov     [webengine+0x3f300 (6a2df300)],ebx

           6a2aca89 ff152c122a6a     call    dword ptr [webengine+0x122c (6a2a122c)]

           6a2aca8f 83c40c           add     esp,0xc

           6a2aca92 5e               pop     esi

           6a2aca93 8bc5             mov     eax,ebp

           6a2aca95 5d               pop     ebp

           6a2aca96 5b               pop     ebx

           6a2aca97 c3               ret

           6a2aca98 6a01             push    0x1

           6a2aca9a e80e380000  call webengine!LoadLibraryUsingFullPath+0x243 (6a2b02ad)

           6a2aca9f 833d54f52d6a00   cmp    dword ptr [webengine+0x3f554 (6a2df554)],0x0

           6a2acaa6 7412         jz webengine!AspNetGetExtensionVersion+0xc10 (6a2acaba)

           6a2acaa8 e83e2e0000       call    webengine!GetXSPInstance+0x502 (6a2af8eb)

           6a2acaad e88cffffff call webengine!AspNetGetExtensionVersion+0xb94 (6a2aca3e)

           6a2acab2 85c0             test    eax,eax

    Security updates installed just prior to the events;






    I can upload/email any logs/dmp files if needed.

    Any help would be greatly appreciated…

    Thanks in advance.

  39. David.Wang says:

    Todd – I recommend contacting Microsoft PSS and open a support case with them so that they can debug your issue. This looks like a crash within WebEngine.dll which is loaded within inetinfo.exe by aspnet_isapi.dll, all of which is in Microsoft code.

    As a reminder — this is how one DETERMINES the root cause of any crash:

    1. A tool to capture the exception of interest

    2. A debugger to interact with the crash memory dump, with symbols

    3. A human with knowledge of how to read the memory dump

    You have only used tools to do #1. You have not done #2 nor #3, so your expectations of determining the root cause will not be fulfilled.

    At this point in time, there is no tool that can perform #3 generically. When we have such a tool, humans will no longer need to write software because software can author and debug itself…


  40. navin says:

    while working after Tc internet cannot brouse & dll crash

  41. Ron Howerton says:

    I cannot definitively state what caused it in my case.  I was in the middle of compiling a web site when it first occurred.  AFAIK, nothing was installed or updated at the time or before that point during the day.  The event log contains no indications of problem prior to the first failed load.

    With help from this site I eventually discovered the WWW Publishing Service was shut down and changed to manual mode, so it was not restarting when I rebooted.  Restarting the service resolved the problem for me.

  42. Ron Storpoli says:

    I just spent a day on this problem tracking down the same error, Unable to load webengine.dll. In both Cassini and aspNetServe. Both cases the exception was thrown from ApplicationManager.CreateObject(…). It worked on my desktop but not my development laptop. In my case it was a supid error, I had the path to the web directory in the app.config but the directory was on a different drive so the path was wrong. It seems the error "Unable to load webengine.dll, dll not found" has nothing to do with the actual problem.

  43. PHK Corporation says:

    The problem occurs when trying to embed the Cassini Web Server in a dotNet application/solution using VS2010 Pro. After starting Cassini, then trying to access the page results in the webengine exception.

    Though VS2010 Pro comes with a development ASP.Net Server, suspect that have to investigate/change the version of Cassini???

Skip to main content