Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Abrir imágenes bmp (https://www.clubdelphi.com/foros/showthread.php?t=52945)

fasthorse 05-02-2008 17:00:13

Abrir imágenes bmp
 
Hola, estoy haciendo un programa de edición de imágenes y cuando intento abrir una imagen me da error, me dice que no se puede cargar el archivo.

Os voy a poner el trozo de código que me falla, éste está en un formulario principal y quiero abrir la imagen en otro formulario, TForm2, donde está incluido el TImage. El código es el siguiente:

Código:

if(cdAbrir->Execute())
try{
Form2->Imagen->Picture->LoadFromFile(cdAbrir->FileName);
Caption= "Imagen-(" + cdAbrir->FileName + ")";
} catch(...) {
ShowMessage("No es posible cargar el archivo");
}

No me la abre, siempre me dice que no es posible cargar el archivo, y he depurado y creo q el error está en la línea donde la abre:
Form2->Imagen->Picture.... pero no he conseguido arreglar nada, a ver si alguien me puede echar una mano.

Gracias, y un saludo.

cHackAll 06-02-2008 19:25:20

Si utilizas catch(...) { nunca veras el error real que es generado... veras tu mensaje. Puede que el archivo tenga dicha extensión pero tenfa el formato de un PNG (por ejemplo), o puede que el BMP este ebierto en modo exclusivo... puede que hasta esté deñado.

Ejecuta la instrucción fuera del try catch para que te diga el error.

Chris 06-02-2008 20:24:32

Cita:

Empezado por cHackAll (Mensaje 263847)
Si utilizas catch(...) { nunca veras el error real que es generado... veras tu mensaje. Puede que el archivo tenga dicha extensión pero tenfa el formato de un PNG (por ejemplo), o puede que el BMP este ebierto en modo exclusivo... puede que hasta esté deñado.

Ejecuta la instrucción fuera del try catch para que te diga el error.

[suposición]
A lo mejor este chico ya descubrió que el problema es que el archivo está dañado y le dió pena venir a contarnos. (( :o ))
[/suposición]

Saludos.

cHackAll 06-02-2008 20:42:01

Cita:

Empezado por D&W (Mensaje 263861)
[suposición]
A lo mejor este chico ya descubrió que el problema es que el archivo está dañado y le dió pena venir a contarnos. (( :o ))
[/suposición]

Saludos.

Pues muchas personas preguntan, ven la respuesta a su pregunta y regresan a casa sin agradecer (no digo que sea el caso), pero si vamos a especular... muchas cosas pasan por mi mente :rolleyes:

Saludos

fasthorse 07-02-2008 10:57:42

Hola, ya lo pobré es que estado fuera y he estado dos días sin tocarlo, pero el archivo no está dañado, y no me da ningún error q raro, porque lo he probado además abriéndolo en el mismo formulario form1(el principal) y ahí si me la abre... el problema es cuando le digo que me la abra en el otro... si se os ocurre otra cosa o forma de hacerlo...
Y por supuesto que agradezco a todos el leer y el colaborar en estos foros porque sois ayuda.

Un saludo.

Chris 07-02-2008 15:35:40

Cita:

Empezado por fasthorse (Mensaje 263950)
Hola, ya lo pobré es que estado fuera y he estado dos días sin tocarlo, pero el archivo no está dañado, y no me da ningún error q raro, porque lo he probado además abriéndolo en el mismo formulario form1(el principal) y ahí si me la abre... el problema es cuando le digo que me la abra en el otro... si se os ocurre otra cosa o forma de hacerlo...
Y por supuesto que agradezco a todos el leer y el colaborar en estos foros porque sois ayuda.

Un saludo.

Hola fasthorse, el problema no es lo que está sucediendote con el archivo, la soloción a X problema empieza desde el punto en que logras determinar el tipo de error que causa el problema X.

En tu primer post, relatas que sólo te dice que no se pudo abrir el archivo, pero ¿por qué?, seguramente, el unico mensaje de error que estes viendo sea el que tu mismo has escrito para TODOS LOS ERRORES. Ya lo ha dicho cHackAll, "nunca veras el error real que es generado... veras tu mensaje." porque no intentas comentar el catch por un momento, luego si comentas cual es la clase del Error producido, (EAccessViolation, etc).

Caption= "Imagen-(" + cdAbrir->FileName + ")";
} catch(...) {
ShowMessage("No es posible cargar el archivo");
}
Saludos.


La franja horaria es GMT +2. Ahora son las 06:05:15.

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