Microsoft Knowledge Base Article
This article contents is Microsoft Copyrighted material.
©2005-©2007 Microsoft Corporation. All rights reserved.
Terms
of Use |
Trademarks
You receive an error message about a DEP violation when you request an ASP.NET page for the .NET Framework 1.1 on Windows Vista
| Article ID | : | 916440 |
| Last Review | : | May 26, 2006 |
| Revision | : | 1.1 |
Beta Information
This article discusses a Beta release of a Microsoft product. The information in this article is provided as-is and is subject to change without notice.
No formal product support is available from Microsoft for this Beta product. For information about how to obtain support for a Beta release, see the documentation that is included with the Beta product files, or check the Web location where you downloaded the release.SYMPTOMS
Consider the following scenario. You install Microsoft ASP.NET for the Microsoft .NET Framework 1.1 on Microsoft Windows Vista. You then create an ASP.NET page. You request the ASP.NET page, and the worker process stops responding. In this scenario, you receive an error message that states that the worker process was closed because of a Data Execution Prevention (DEP) violation.
Note ASP.NET for the .NET Framework 1.1 will not run on Windows Vista with Microsoft Internet Information Services (IIS) 7.0.
Back to the top
CAUSE
This problem occurs because the .NET Framework 1.1 runtime does not support DEP. IIS 7.0 on Windows Vista only supports the full isolation ASP.NET process model. The full isolation ASP.NET process model requires that the no execute (NX) feature is enabled.
Note By default, the .NET Framework 1.1 is not included with Windows Vista.
Back to the top
RESOLUTION
To resolve this problem, apply the .NET Framework 1.1 Service Pack 1 (SP1). After you apply this service pack, ASP.NET 1.1-based applications can run under IIS 7.0.
For more information.NET Framework 1.1 Service Pack 1, click the following article number to view the article in the Microsoft Knowledge Base:
885055 (http://kbalertz.com/Feedback.aspx?kbNumber=885055/)
How to obtain Microsoft .NET Framework 1.1 Service Pack 1
Back to the top
STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
Back to the top
MORE INFORMATION
DEP is also known as the NX feature. DEP was introduced into the Windows operating system in Windows XP SP2 and Windows Server 2003 SP1. When you run applications on hardware that supports NX, all code the runs from pages that are not marked as EXECUTE causes a hardware fault or an access violation. DEP helps prevent stack overruns and heap overrun attacks. The following versions of the .NET Framework runtime have additional NX support:
| • | The .NET Framework 1.0 SP3 |
| • | The .NET Framework 1.1 SP1 |
| • | The .NET Framework 2.0 |
All other versions of the .NET Framework runtime do not load if NX is enabled. Windows provides application shims in Windows XP, Windows Server 2003, and Windows Vista. These application shims disable NX for any process that loads a non-NX compliant runtime.
NX is turned on or turned off for each process when the process is created. Therefore, a process cannot toggle between two settings when it starts. This is an important consideration for IIS and ASP.NET.
IIS 6.0 on Windows Server 2003 supports two ASP.NET process models. The full isolation ASP.NET process model uses the W3wp.exe file to host the runtime. The in-process ASP.NET process model uses the Aspnet_wp.exe file to host the runtime. IIS 7.0 on Windows Vista only supports the full isolation ASP.NET process model. Windows XP only supports the in-process ASP.NET process model. The full isolation ASP.NET process model is not flagged by the Windows NX application shims. Because it is not flagged, the previous common language runtime (CLR) can load with errors when NX is enabled.
This problem does not occur in Windows XP SP2 and in Windows Server 2003 SP1. Windows XP SP2 successfully runs ASP.NET for the .NET Framework 1.1 because it uses the in-process ASP.NET process model with IIS. The .NET Framework 1.1 SP1 is included with Windows Server 2003 SP1. Therefore, there is no option to run ASP.NET for the original release version of the .NET Framework 1.1 with NX enabled in Windows Server 2003 SP1.
Back to the top
APPLIES TO
| • | Microsoft .NET Framework 1.1 |
| • | Microsoft ASP.NET 1.1 |
Back to the top
Community Feedback System
Very often, it takes hours to solve a problem. Very often, you've looked high
and low, and have tried a lot of solutions. When you finally found it, chances
are, it was because someone else helped you. Here's your chance to give back.
Use our community feedback tool to let others know what worked for you and what
didn't.
Please also understand that the community feedback system is not warranted to be
correct, it's simply a system that we've built to let people try and help each
other. If something in a feedback response doesn't make sense to you, or you're
not comfortable making changes that the feedback talks about (like registry
edits), please consult a professional.
Thank you for using kbAlertz.com Feedback System.
-- Scott Cate
Be the first to leave feedback, to help others about this knowledge base
article.
(Optional) Name
(Optional)
Public URL Or Email
Comments
No
HTML -- Text Only Please