Categorías: Windows

Cómo reparar la infracción de acceso en la dirección de error de Delphi en Windows 10 [Pasos]

¿Qué es la 'Violación de acceso en la dirección de error de Delphi' en Windows 10?

En este artículo, vamos a discutir sobre Cómo reparar la infracción de acceso en el error de dirección, la infracción de acceso en la dirección de error de Delphi en Windows 10/8/7. Se le guiará con pasos/métodos sencillos para resolver el problema. Empecemos la discusión.

'Delfos': Delphi es un software que utiliza el dialecto Delphi del lenguaje de programación Object Pascal y proporciona un entorno de desarrollo integrado (IDE) para el desarrollo rápido de aplicaciones de software de escritorio, móvil, web y consola, actualmente desarrollado y mantenido por Embarcadero Technologies. El compilador de Delphi genera código nativo para dispositivos basados ​​en Microsoft Windows, MacOS, iOS, Android y Linux OS.

Sin embargo, varios usuarios de Delphi informaron que se enfrentaron 'Violación de acceso en la dirección de error de Delphi' cuando escriba el programa y pruébelo y luego envíelo a todas partes. Este error indica cuando usa Delphi en cualquier desarrollo de software cuando el programa no puede enviar el programa probado. Podría considerar compilar su programa con la instrucción de compilación {$ D}: Delphi puede crear un archivo de imagen que ayude a localizar el código fuente para los errores de Violación de acceso.

El cuadro de diálogo Opciones de proyecto le ofrece especificar todo lo que necesita. Para el archivo de unidad, la información de depuración se registra en el archivo de unidad junto con el código de objeto de la unidad. Infracción de acceso en el error de dirección generalmente aparece en medio de su trabajo en Delphi y hace que posponga la resolución del problema. Ahora, sabrá cómo encontrar fácilmente la ruta exacta, el archivo doe de origen y la línea donde se produce la infracción de acceso en el error de dirección si solo se proporciona una dirección conflictiva como 'Buscar-Buscar error...'. Infracción de acceso en la dirección Error de Delphi aparece de la siguiente manera o similar.

"Violación de acceso en la dirección en módulo Lectura de direcciones.

En Delphi IDE en su computadora con Windows, si su programa cumple con la información de depuración, puede ubicar la línea de código fuente que causó el error. La posible razón detrás del problema puede ser que el programa Delphi sea el uso de un objeto que no ha sido creado. Si habilita 'Detener en excepciones de Delphi' en la ventana de opciones del depurador, es posible que vea un mensaje que dice que se ha producido EAccessViolation. EAccessViolation es la clase de excepción para errores de acceso a memoria no válidos.

¿Razón detrás de los errores y cómo corregir la infracción de acceso en la dirección de error de Delphi en una PC con Windows?

1: llamar a un objeto inexistente

Este problema puede ocurrir debido a que Delphi usa un objeto que no se ha creado o que no se ha publicado. Puede solucionar el problema asegurándose de que todos los objetos a los que acceda se creen primero. Por ejemplo, cuando una tabla se encuentra en un módulo de datos que no se ha creado, puede abrir la tabla en el evento OnCreate del formulario. En el siguiente código, después de llamar a un evento que se eliminó, aparece el error de infracción de acceso en la dirección:

var b:TBitmap;

comenzar

b:=TBitmap.Crear;

tratan

//Hacer algunas cosas en el objeto b Operación

finalmente

b.gratis;

fin;

...

//Debido a que b ha sido liberado, aparecerá un error de violación de Acceso

b.Canvas.TextOut (0,0, 'Esto es una infracción de acceso');

fin;

2: Parámetros API inexistentes

Este error puede ocurrir si intenta pasar parámetros inexistentes a la función Win API. Puede solucionar el problema consultando la ayuda de Win API para ver la información del parámetro y el tipo de parámetro de esta llamada de función API.

3: Deja que Delphi se libere

Cuando un objeto es propietario de otro objeto, deja que elimine el trabajo por ti. Cuando finaliza la aplicación, libera el objeto de la aplicación, que libera todos los formularios. Por ejemplo, si crea automáticamente dos formularios al comienzo del programa, el siguiente código provocará una infracción de acceso en el error de dirección.

unidad Unit1;

...

usa unidad2;

...

procedimiento TForm1.Call_Form2

comenzar

Formulario2.MostrarModal;

Form2.Libre;

//Aparecerá un error de violación de acceso

Formulario2.MostrarModal;

fin;

4: eliminar excepciones

Nunca debe eliminar los objetos de excepción temporales. El manejo de una excepción liberará automáticamente el objeto de excepción. Si libera manualmente el objeto de excepción, el programa intentará liberarlo nuevamente, luego aparecerá el error de Infracción de acceso en la dirección.

Cero:=0;

tratan

dummy:= 10/Cero;

excepto

en E: EZeroDivide hacer

MessageDlg ('no se puede hacer con 0 Divisor!', MtError, [mbOK], 0);

E.free.////Aparecerá un error de infracción de acceso

fin;

5: recuperar una cadena vacía

Si no lo sabe, una cadena vacía no tiene datos y si está intentando recuperar una cadena vacía, puede ver una infracción de acceso en el error de dirección.

vars: cadena;

comenzar

s: = �\x9D;

s [1]: = 'a';

//Violación de acceso Aparecerá el error

fin;

6: Referirse directamente al puntero

Debe hacer referencia al puntero indirectamente; de ​​lo contrario, cambiará la dirección del puntero y muchos destruirán otras unidades de almacenamiento.

En resumen

Estoy seguro de que esta publicación te ayudó en Cómo reparar la infracción de acceso en el error de dirección, la infracción de acceso en la dirección de error de Delphi en Windows 10/8/7 con varios pasos/métodos sencillos. Puede leer y seguir nuestras instrucciones para hacerlo. Eso es todo. Para cualquier sugerencia o consulta, escriba en el cuadro de comentarios a continuación.

adminguides

Entradas recientes

Arreglar después de la actualización de Windows 11, la herramienta de recorte no funciona

Microsoft lanzó el sistema operativo Windows 11 de próxima generación en el último mes de…

2 años hace

Arreglar un error de No se encontró una grabadora de disco al grabar una imagen

Parece que algunos de los desafortunados usuarios de Windows encuentran el error "No se encontró…

2 años hace

Arreglar el error de archivo corrupto Adcjavas.Inc

Windows tiene una utilidad incorporada llamada System File Checker o SFC que escanea todo el…

2 años hace

Solucione el error 0X0000013C INVALID_IO_BOOST_STATE

El sistema operativo Windows es la plataforma más popular para fines educativos y laborales que…

2 años hace

Arreglar 0x800f0825 Error El paquete permanente no se puede desinstalar

REVISIÓN 2: Realice una restauración del sistema:REVISIÓN 3: Ejecute el Comprobador de archivos del sistema:REVISIÓN…

2 años hace

Repare el sonido de Acer Nitro 5 que no funciona, el audio crepita o es bajo

El Nitro 5 es un portátil para juegos voluminoso de 2,4 kg, como es típico…

2 años hace