“ Se intentó leer o escribir en la memoria protegida ” excepción

Nos encontramos con este error al intentar abrir la página /_catalogs/masterpage/Forms/AllItems.aspx. Había estado intentando aprobar un diseño de página que acababa de actualizar y comprobar en una versión principal.

Para hoy, el error desapareció, pero no estoy seguro de qué lo causó y cómo prevenirlo en el futuro. Estos son los tres errores lanzados en ese momento por el sistema (del archivo de registro):

08/24/2011 17:11:34.05 w3wp.exe (0x2030) 0x1EB4 Document Management Server Document Management 52od Medium MetadataNavigationContext Page_InitComplete: No XsltListViewWebPart was found on this page[/_catalogs/masterpage/Forms/AllItems.aspx]. Hiding key filters and downgrading tree functionality to legacy ListViewWebPart(v3) level for this list. a433ce5c-59de-4f69-8122-313a15679048

08/24/2011 17:11:34.10 w3wp.exe (0x2030) 0x1EB4 SharePoint Foundation Runtime tkau Unexpected System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. at Microsoft.Web.CommandUI.RibbonRenderer.RenderContextualGroup(DataNode xnCtxGroup, RibbonRenderContext rrc, HtmlTextWriter writer) at Microsoft.Web.CommandUI.RibbonRenderer.RenderRibbon(DataNode xnData, RibbonRenderContext rrc, HtmlTextWriter writer) at Microsoft.Web.CommandUI.Ribbon.AppendRibbon(HtmlTextWriter writer, Boolean headerOnly, UInt32 initialTabScaleIndex, RibbonRenderContext rrc) at Microsoft.Web.CommandUI.Ribbon.Render(HtmlTextWriter writer) at Microsoft.SharePoint.WebControls.SPRibbon.Render(HtmlTextWriter writer) at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) at Syste... a433ce5c-59de-4f69-8122-313a15679048

08/24/2011 17:11:34.10* w3wp.exe (0x2030) 0x1EB4 SharePoint Foundation Runtime tkau Unexpected ...m.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer) at System.Web.UI.HtmlControls.HtmlForm.Render(HtmlTextWriter output) at System.Web.UI.HtmlControls.HtmlForm.RenderControl(HtmlTextWriter writer) at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) at System.Web.UI.HtmlControls.HtmlContainerControl.Render(HtmlTextWriter writer) at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) at System.Web.UI.Page.Render(HtmlTextWriter writer) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) a433ce5c-59de-4f69-8122-313a15679048

Responder

Este error ocurre cuando una aplicación intenta acceder a la memoria que no le pertenece. Windows interviene y bloquea el intento, lo que hace que .NET arroje la excepción que ve en el registro.

Usted generalmente no debería ver esto en aplicaciones .NET porque el tiempo de ejecución debería garantizar que la memoria se administre de forma segura. Sin embargo, puede ocurrir en el código que se ejecuta fuera de .NET Framework , como llamadas a Windows nativo o COM (la capa subyacente de SharePoint).

Como no puede reproducir el error, personalmente no me preocuparía por ello a menos que pueda decir directamente que ha causado un impacto negativo en su sistema. Parece que esto sucedió al renderizar la cinta, así que no creo que sea una preocupación. SharePoint es bastante sólido y debería evitar que ocurra algo malo con sus datos.

Para minimizar la probabilidad de que ocurra un error de este tipo en el futuro:

  1. Asegúrese de tener las últimas actualizaciones instaladas en .NET Framework (a través de Windows Update), SharePoint (a través de service packs y actualizaciones acumulativas ), y también cualquier software que se integre con SharePoint.

  2. Asegúrese de que sus entornos estén lo más limpios posible y no «No deje características, paquetes de soluciones WSP u otro software instalado que no tenga una razón para estar ahí.

Comentarios

  • Gracias, Alex. Esto sucedió en nuestro servidor de desarrollo, que probablemente tiene algunas soluciones WSP que ' no estamos usando. Es necesario realizar una limpieza 🙂

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *