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.
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;
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.
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;
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;
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;
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.
Microsoft lanzó el sistema operativo Windows 11 de próxima generación en el último mes de…
Parece que algunos de los desafortunados usuarios de Windows encuentran el error "No se encontró…
Windows tiene una utilidad incorporada llamada System File Checker o SFC que escanea todo el…
El sistema operativo Windows es la plataforma más popular para fines educativos y laborales que…
REVISIÓN 2: Realice una restauración del sistema:REVISIÓN 3: Ejecute el Comprobador de archivos del sistema:REVISIÓN…
El Nitro 5 es un portátil para juegos voluminoso de 2,4 kg, como es típico…