Ver Mensaje Individual
  #16  
Antiguo 26-02-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Reputación: 28
jachguate Va por buen camino
Cita:
Empezado por egostar Ver Mensaje
Amigo, yo hago esto sin ningun problema

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo1.Lines.LoadFromFile('archivo.txt');
end;
Solo que debe existir el Archivo.txt en la misma ruta del programa.

Salud OS
Eliseo, Carlos: De esta forma el archivo no debe estar en la misma ruta que el programa... es decir, no lo buscará allí (conceptualmente), sino que en el "directorio actual" de la sesión.

Si haces un acceso directo al programa, podrías cambiar la ruta de la línea "iniciar en" y buscaría el archivo allí. Pero también podrías cambiar el "directorio actual" del programa con una llamada a ChDir.

En cambio utilizando Application.ExeName siempre se tendrá la ruta del exe (útil a veces, otras no)

Por ejemplo:

Código Delphi [-]
begin
  //leerá el archivo de la ruta donde se ha iniciado el programa, 
  //que podría ser la misma del exe, pero que podría ser una indicada
  //por el usuario en el acceso directo o por el proceso que ha arrancado
  //el programa en la llamada al api
  Memo1.LoadFromFile('archivo.txt'); 
  //cambia la "carpeta actual" a c:\
  ChDir('c:\');
  //Ahora busca archivo.txt en c:\ y ya no en la carpeta de 
  //inicio del programa
  Memo1.LoadFromFile('archivo.txt'); 
  //busca archivo.txt en la misma ruta del exe
  Memo1.LoadFromFile(
    IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName)) + 'archivo.txt');
end;

Les recuerdo que en windows vista, los usuarios regularmente no tienen permisos para escribir dentro de c:\archivos de programa, por lo que la práctica de leer o guardar dentro de esta ruta está cayendo en desuso, favoreciendo las carpetas de los usuarios (Application Data o Mis Documentos, según sea el caso)

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita