| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Ciklon Cdt

Registrado: 27 Nov 2002Mensajes: 22Ubicación: Argentina
|
Publicado: Mie 30 Jun, 2004 2:37 pm Asunto: Problema con LoadFromFile |
|
|
Tengo problemas para cargar la imagen en un TImage usando un AnsiString como parametro para la funcion LoadFromFile(), alguien puede ayudarme.
AnsiString param;
Imagen->Picture->LoadFromFile(param);
Aqui es donde esta el problema me dice que se produjo una violacion de memoria, no entiendo porque
Gracias de antemano. |
|
| Volver arriba |
|
 |
LordNemesis Master


Registrado: 31 Dic 2003Mensajes: 340Ubicación: México
|
Publicado: Mie 30 Jun, 2004 4:29 pm Asunto: |
|
|
Saludos
Si el codigo esta asi como lo pusiste, es obvio que te marque error, ya que la variable 'param' esta vacia, por lo tanto intentas abrir un archivo dandole una ruta nula... lo que tienes que hacer es que a param le mandes la ruta del archivo y entoncs si poder abrirlo... algo mas o menos asi:
| Código: |
AnsiString param="c:\\midirectorio\\MiImagen.bmp";
Image1->Picture->LoadFromFile(param);
|
_________________ Dirección Municipal de Informática
H. Ayuntamiento de Tijuana
Arriba Lopez Obrador !!!
Los Mexicanos Merecemos Respeto !!! |
|
| Volver arriba |
|
 |
Ciklon Cdt

Registrado: 27 Nov 2002Mensajes: 22Ubicación: Argentina
|
Publicado: Mie 30 Jun, 2004 4:37 pm Asunto: problemas con LoadFromFile() |
|
|
Perdon, en el apuro olvide poner el codigo completo
en realidad lo tengo asi:
AnsiString param; //variable global
..
en otra funcion
param="c:\\directorio\\imagen.bmp"//ejemplo
...
..
luego
Imagen->Picture->LoadFromFile(param); |
|
| Volver arriba |
|
 |
Invitado
|
Publicado: Mie 30 Jun, 2004 11:49 pm Asunto: |
|
|
Hola
en ese caso, deberias de poner exactamente el error quet e esta manerjando, porqure pueden ser varios, probablemente sea que no enceutnra el archivo o que no estra creado el objeto |
|
| Volver arriba |
|
 |
LordNemesis Master


Registrado: 31 Dic 2003Mensajes: 340Ubicación: México
|
Publicado: Jue 01 Jul, 2004 4:15 pm Asunto: |
|
|
Hola
en ese caso, deberias de poner exactamente el error que te está manejando, porque pueden ser varios, probablemente sea que no encuentra el archivo o que no esta creado el objeto _________________ Dirección Municipal de Informática
H. Ayuntamiento de Tijuana
Arriba Lopez Obrador !!!
Los Mexicanos Merecemos Respeto !!! |
|
| Volver arriba |
|
 |
Cesar C. Salazar Gonzalez Master


Registrado: 01 Oct 2002Mensajes: 2155Ubicación: San Cristóbal de Las Casas, Chiapas
|
Publicado: Vie 02 Jul, 2004 5:39 am Asunto: |
|
|
Prueba utilizar un OpenDialogo, al parecer no se utilizan, las dobles slash "\\",
| Código: |
void __fastcall TForm1::Button1Click(TObject *Sender)
{
OpenDialog1->DefaultExt = ".ICO";
OpenDialog1->Filter = "icons (*.ico)|*.ICO";
OpenDialog1->Options << ofOverwritePrompt << ofFileMustExist;
if (OpenDialog1->Execute())
{
TIcon *pi = new TIcon();
try
{
AnsiString as;
pi->LoadFromFile(OpenDialog1->FileName);
as = ChangeFileExt(OpenDialog1->FileName,".BMP");
Image1->Width = pi->Width;
Image1->Height = pi->Height;
Image1->Canvas->Draw(0,0,pi);
Image1->Picture->SaveToFile(as);
ShowMessage(OpenDialog1->FileName + " Saved to " + as);
}
__finally
{
delete pi;
}
}
} |
Sacado de la ayuda de builder _________________
 |
|
| Volver arriba |
|
 |
Ciklon Cdt

Registrado: 27 Nov 2002Mensajes: 22Ubicación: Argentina
|
Publicado: Mar 06 Jul, 2004 12:12 am Asunto: Mismo problema con LoadFromFile |
|
|
Gracias Cesar, pero es una imagen definida en tiempo de diseño, el usuario no puede seleccionarla sino que al elegir un itme del menu contextual se modifica el color de la imagen segun el item elegido el error preciso es:
project xx.exe raised exception class EAccess violation with message 'Access violation at address 0048167 in module xx.exe' 'Read of address 00000000'. Process Stopped. Use step or run to continue. |
|
| Volver arriba |
|
 |
|