![]() |
Problema con una 'Aplicación para presentar fotos'
Buenos días.
Primero quiero decir que abro este hilo después de buscar en otros hilos una solución a mi problema, a continuación presento mi problema: Primero quiero empezar diciendo que para mi aplicación utilizo delphi7 bajo Windows vista. Ahora el problema, mi aplicación consiste en un 'presentador de imágenes', para ello cuento en el formulario con un componente Timage, un botón (start/stop) y un reloj para un contador. La aplicación funciona del siguiente modo: para hacer la presentación de imágenes, busco en un directorio imágenes con extensión *.bmp, para ello utilizo las funciones FindFirst y FindNext, y haciendo uso de unas variables y del reloj hago que la imágenes se muestren una tras otra en el Timagen. Hasta ahí todo bien el problema está que cuando ejecuto la aplicación, si muevo el formulario por la pantalla, o algún otro formulario que también tenga el escritorio, en el instante de transición de una fotografía a otra me salta el siguiente error: 'Access violation at address 7789DE2D in module ntdll.dll. Write of address C68383C9'. He pensado que puede ser algún fallo de refresco del formulario o del Timge, pero estoy un poco perdido. ¿Alguien me puede ayudar?. Un saludo. |
Hola pacodelphi y bienvenido a los foros de Club Delphi.
Con la información que das, solamente te puedo decir que el error Access Violation (generalmente) se debe a que estas intentando utilizar o liberar un recurso no disponible. Cita:
¿Cargas directamente las imágenes al TImage desde el disco? ¿ Usas TBitmap, TStream ? Ayudaría mucho que pusieras algo de código... Un saludo. |
Perdon (soy nuevo en esto) voy a ver como puedo poner el código estructurado y lo subo.
|
|
Hola pacodelphi.
Me tomé la libertad de hacer el código de cero. Cambié el Memo por un ListBox así se selecciona el nombre de la imágen a medida que se muestra y algunos detalles más. (Espero haber interpretado bién lo que buscas...) Te adjunto el código para que lo puedas modificar a gusto o sacar algunas ideas. Un saludo. |
Gracias
Hola ecfisa.
Gracias por tu ejemplo, ya que la solución que propones, con algunos cambios, es mucho mejor que la mía y me viene perfecto, ya no tengo los errores y me funciona perfecto. Muchas gracias de nuevo. Un cordial saludo. Paco. |
| La franja horaria es GMT +2. Ahora son las 15:33:35. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi