事件 ID ( 1093 )的描述(在资源( ASP.NET 2.0.50727.0 )中)无法找到。本地计算机可能没有必要的注册信息或消息 DLL 文件来从远程计算机显示消息。您可能可以使用 /AUXSOURCE= 标识来检索词描述;查看帮助和支持以了解详细信息。下列信息是事件的一部分: 0x80070005.
Unable to get the private bytes memory limit for the W3WP process. The ASP.NET cache will be unable to limit its memory use, which may lead to a process restart. Error: 0x80070005
解决方法:
1.查看当前IIS进程用户身份,是否已经加入到IIS_WPG组。 Unable to get the private bytes memory limit for the W3WP process (reloaded)
Sometimes they come back, as my favorite writer says… This is the case of this error message I already wrote about a couple of years ago; anyway this time the customer before calling CSS for support had already tried the suggestions on my previous post, unfortunately without luck. The customer has tried:
aspnet_regiis -ga “Network Service”
cscript metaacl.vbs IIS://Localhost/W3SVC/AppPools IIS_WPG RE
Assured the account running Application Pool (NETWORK SERVICE) is part of the IIS_WPG group
The difference this time is that the application’s files are hosted on a centralized network share; for this particular scenario, also the account used in the “Connect As…” dialog in IIS Manager must be part of the IIS_WPG group:
2.如果组内已经加入,但是还报错. PROBLEM DESCRIPTION ===================
I can run ASP.NET applications on the server, however I have noticed that when I do there is an asp error entry in the event log: "Unable to get the private bytes memory limit for the W3WP process. The ASP.NET cache will be unable to limit its memory use, which may lead to a process restart. Error 0x80070005".
ENVIRONMENT
===========
- Windows Server 2003
- .NET Framework 1.1
SUMMARY of TROUBLESHOOTING ==========================
This error is caused by a known issue with insufficient permissions in your IIS metabase. The metabase ACL's on the target server did not include the IIS_WPG group on the following two nodes of the metabase (IIS_WPG is in both ACL's on a clean install):
- W3SVC/AppPools
- W3SVC/Filters
You can download the MetaACL utility from http://support.microsoft.com/?id=267904. After you have installed the program, open a command prompt and navigate to the directory where you installed it. Then type the following:
- cscript metaacl.vbs IIS://Localhost/W3SVC/AppPools IIS_WPG RE
- cscript metaacl.vbs IIS://Localhost/W3SVC/Filters IIS_WPG RE Warning:
The path is case sensitive - type exactly as above; after you run this command restart the IIS services and see if this corrects the problem.
以上内容引用:
http://blogs.msdn.com/b/carloc/archive/2006/09/20/unable-to-get-the-private-bytes-memory-limit-for-w3wp-exe-process.aspx
http://blogs.msdn.com/b/carloc/archive/2009/01/27/unable-to-get-the-private-bytes-memory-limit-for-the-w3wp-process-reloaded.aspx
3.问题依然存在,并且是使用过NewSID.exe的用户,查看以下内容 Problem “Unable to get the private bytes memory limit for the W3WP process. The ASP.NET cache will be unable to limit its memory use, which may lead to a process restart. Error: 0x80070005” Solution
In order to develop with SharePoint I use Virtual PC or Virtual Server 2005 images. Installing Windows Server 2003 takes about an hour and because of that I copy the images and change the SID using NewSID.exe. After that I get the error and using Google I found the solution at Joe unfiltered:
“I had created this VPC by copying the virtual hard disk from another VPC and running NewSID on it. I was under the impression that this fixed any issues regarding SIDs from the old machine conflicting with SIDs on the new one. Not quite, it turns out. The IIS_WPG group from the old box is on the ACL of the app pools in the metabase, not IIS_WPG of the new box. Use metaacl.vbs (download from MS) to check.” Use the command:
MetaAcl.vbs "IIS://localhost/W3SVC/AppPools"
One of the entries will be an SID, not a user/group name. This is the IIS_WPG from the old box. To fix this, add the IIS_WPG group of the new box to the ACL in question using the command:
MetaAcl.vbs "IIS://localhost/W3SVC/AppPools" IIS_WPG U
So if your working with WSS 3 or MOSS 2007 and you use virtualization you should apply the fix.
Thanks to Joe!