Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

AccessViolationException (Clase)

Excepción que se produce cuando se intenta leer o escribir en la memoria protegida.

System.Object
  System.Exception
    System.SystemException
      System.AccessViolationException

Espacio de nombres:  System
Ensamblado:  mscorlib (en mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class AccessViolationException : SystemException

El tipo AccessViolationException expone los siguientes miembros.

  NombreDescripción
Método públicoAccessViolationException()Inicializa una nueva instancia de la clase AccessViolationException con un mensaje proporcionado por el sistema que describe el error.
Método públicoAccessViolationException(String)Inicializa una nueva instancia de la clase AccessViolationException con un mensaje de error especificado que describe el error.
Método protegidoAccessViolationException(SerializationInfo, StreamingContext)Inicializa una nueva instancia de la clase AccessViolationException con datos serializados.
Método públicoAccessViolationException(String, Exception)Inicializa una nueva instancia de la clase AccessViolationException con un mensaje de error especificado y una referencia a la excepción interna que representa la causa de esta excepción.
Arriba

  NombreDescripción
Propiedad públicaDataObtiene una colección de pares clave-valor que proporcionan información adicional definida por el usuario acerca de la excepción. (Se hereda de Exception).
Propiedad públicaHelpLinkObtiene o establece un vínculo al archivo de ayuda asociado a esta excepción. (Se hereda de Exception).
Propiedad públicaHResultObtiene o establece HRESULT, un valor numérico codificado que se asigna a una excepción específica. (Se hereda de Exception).
Propiedad públicaInnerExceptionObtiene la instancia Exception que produjo la excepción actual. (Se hereda de Exception).
Propiedad públicaMessageObtiene un mensaje que describe la excepción actual. (Se hereda de Exception).
Propiedad públicaSourceDevuelve o establece el nombre de la aplicación o del objeto que generó el error. (Se hereda de Exception).
Propiedad públicaStackTraceObtiene una representación de cadena de los marcos inmediatos en la pila de llamadas. (Se hereda de Exception).
Propiedad públicaTargetSiteObtiene el método que produjo la excepción actual. (Se hereda de Exception).
Arriba

  NombreDescripción
Método públicoEquals(Object)Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object).
Método protegidoFinalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método públicoGetBaseExceptionCuando se reemplaza en una clase derivada, devuelve la clase Exception que representa la causa principal de una o más excepciones posteriores. (Se hereda de Exception).
Método públicoGetHashCode Sirve como una función hash para un tipo en particular. (Se hereda de Object).
Método públicoGetObjectDataCuando se reemplaza en una clase derivada, establece SerializationInfo con información sobre la excepción. (Se hereda de Exception).
Método públicoGetTypeObtiene el tipo en tiempo de ejecución de la instancia actual. (Se hereda de Exception).
Método protegidoMemberwiseClone Crea una copia superficial del Object actual. (Se hereda de Object).
Método públicoToStringCrea y devuelve una representación de cadena de la excepción actual. (Se hereda de Exception).
Arriba

  NombreDescripción
Evento protegidoSerializeObjectStateSe produce cuando se serializa una excepción para crear un objeto de estados de excepción que contiene datos serializados sobre la excepción. (Se hereda de Exception).
Arriba

Se produce una infracción de acceso en código no administrado o no seguro cuando el código trata de leer o escribir en memoria que no se ha asignado o a la que no tiene acceso. Suele ocurrir porque un puntero tiene un valor incorrecto. No todas las lecturas o escrituras con punteros no válidos llevan a infracciones de acceso; por lo tanto, una infracción de acceso suele indicar que se han realizado varias lecturas o escrituras con punteros no válidos y se ha dañado la memoria. Por lo que las infracciones de acceso, en la mayoría de los casos, indican errores de programación graves. AccessViolationException identifica claramente estos errores irrecuperables.

En los programas compuestos única y exclusivamente de código administrado comprobable, todas las referencias son válidas o nulas y es imposible que se produzcan infracciones de acceso. Sólo se produce una excepción AccessViolationException cuando el código administrado comprobable interactúa con código no administrado o con código administrado que no es seguro.

A partir de .NET Framework 4, las excepciones de AccessViolationException producidas por Common Language Runtime no se controlan mediante la instrucción de catch en un controlador de excepciones estructurado si la excepción se produce fuera de la memoria reservada por Common Language Runtime. Para controlar este tipo de excepción de AccessViolationException , debe aplicar el atributo de HandleProcessCorruptedStateExceptionsAttribute al método en el que se produce la excepción. Este cambio no afecta a las excepciones de AccessViolationException produce el código de usuario, que puede seguir siendo detectado por una instrucción de catch . Para el código escrito para las versiones anteriores de .NET Framework que desea volver a compilar y ejecutar sin modificaciones en .NET Framework 4, puede agregar el elemento de <legacyCorruptedStateExceptionsPolicy> al archivo de configuración de la aplicación. Observe que también puede recibir notificación de excepciones si ha definido un controlador para el evento de AppDomain.FirstChanceException o de AppDomain.UnhandledException .

Información de versiones

Esta excepción se produce en .NET Framework 2.0 y versiones posteriores. En versiones anteriores de .NET Framework, una infracción de acceso en código no administrado o no seguro se representa mediante una excepción NullReferenceException en el código administrado. También se produce una excepción NullReferenceException cuando se desreferencia una referencia nula en el código administrado comprobable, lo que no implica que los datos estén dañados, y no hay forma de distinguir entre estas dos situaciones en las versiones 1.0 y 1.1.

Los administradores pueden permitir que las aplicaciones seleccionadas se comporten del mismo modo que en la versión 1.1 de .NET Framework. Coloque la siguiente línea en la sección Elemento <runtime> del archivo de configuración de la aplicación:

<legacyNullReferenceExceptionPolicy enabled = "1"/>

.NET Framework

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

.NET para aplicaciones de Windows Phone

Compatible con: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft