![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Problemas con TOpenDialog
Tengo un programa que utiliza el openDialog o el SaveDialog. Todo muy bien, pero despues al terminar el programa me da un error de acceso a memoria. Ya comprobé y solo me da el error cuando abro o salvo un fichero. Os ha pasado a alguno?
GRacias. |
#2
|
||||
|
||||
Bueno para poderte responder eso...necesitamos un poco mas de detalle...Por ejemplo:
1. Poner el codigo que usas, a la hora de salvar o de abrir. 2. Que tienes en el OnClose, Ondestroy, o algo que nos diga mas sobre tu caso, pues a todos nos a sucedido un error de acceso a memoria. Y casi siempre es un error de ponerle mucho cuidado.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
#3
|
|||
|
|||
Pues mi código es de lo mas sencillo...
Tengo un botón en el formulario donde abro el opendialog: if miOpenDialog.execute then begin //hago cosas con el fichero end Escojo el fichero que quiero y lo visualizo. Pero probé a aquitar lo que tengo entre el begin y el end y me casca. El problema es al hacer el execute. De mano no me rompe, solo en el momento en que salgo de la aplicación con Application.Terminate o Halt. Voy a probar a hacer un mini-programa solo con el execute. Ya os contaré. Gracias. |
#4
|
||||
|
||||
Primero te recomiendo solo terminar con Halt, cuando tu aplicación termina anormalmente, y segundo te recomiendo que comentes el código hago cosas con el fichero, para ver si el error es verdaderamente de los common dialogs.
Saludos!
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. ![]() |
#5
|
|||
|
|||
Puse entre comentarios el "Hago cosas con el fichero" y me sigue dando problemas, por eso "supongo" que ese no sea el problema.
Y como me esperaba, hice un programa a parte, solo con el execute y funciona.... if sdBuscaFichero.Execute = true then begin try GrabarFichero(sdBuscaFichero.Files[0]); except MessageDlg('No se ha podido guardar el fichero con la lista de señales exportadas. Revise el nombre del fichero seleccionado',mtError,[mbOk],0); end; end;//if odBuscaFichero.Execute then Este es el código orginal. Lo sustituyo solo por esto: GrabarFichero('n:\endesa\sigma_cltlc\quepasa.txt'); y funciona.... este código es con el SaveDialog, pero me pasa lo mismo, en el momento que hago el execute me casca el programa al terminarlo. Gracias de nuevo. |
![]() |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
![]() |
|