Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Fopen Como Saber Ruta Relativa? (https://www.clubdelphi.com/foros/showthread.php?t=30394)

wakeup 05-04-2006 10:48:19

Fopen Como Saber Ruta Relativa?
 
Estoy haciendo una dll en C++, quiero hacer desde la dll una lectura de un fichero de texto. Pero no quiero pasarle la ruta absoluta del archivo sino relativa (que esté en la misma carpeta de la dll, o la misma carpeta del programa que ejecuta la dll, no me importa demasiado ahora).

El caso es que hago:
fichero = fopen("fichero.txt", "r");
Pero fichero siempre es NULL y eso que tengo el fichero.txt copiado en varios sitios. Como puedo saber la carpeta exacta donde tengo que poner el fichero .txt para que funcione la instruccion?

Con la ruta absoluta me funciona c:\...., estoy en WXP

Gracias


__________________________
HipHop
Chiste

Lepe 05-04-2006 11:27:48

Código Delphi [-]

ArchivoDeTExto := SysUtils.ExtractFilePath(Application.ExeName)+ 'fichero.txt';

Aunque es código delphi puede que te ayude. No estoy tan seguro que funcione al usarlo dentro de una dll, ya que el objeto application no estará definido.... pero podrías tener en la DLL una "variable" que guarde la ruta, de forma que desde el programa cargas la dll, le pasas el valor Application.ExeName y ya la dll puede construir la ruta del archivo de texto.

Saludos

wakeup 05-04-2006 11:52:28

Lo que quiero no es construir la ruta absoluta, sino saber cual es la ruta que coge por defecto cuando solo le doy el nombre de fichero

Lepe 05-04-2006 15:58:22

Aps pues vale :D.

Pues la ruta que tenga el sistema operativo activa, que desde luego puede ser distinta a la del explorador de windows y demás.

c:\windows, si mandas a crear un archivo sin ruta, normalmente se va a esa carpeta. Lo normal es mandar a crear un archivo con nombre extraño y usar el buscador de windows para encontrarlo :D.

Por supuesto puedes usar (de la unidad System/SysUtils):
- chDir para cambiar la ruta actual
- GetDir para consultar la ruta activa de la unidad de disco pasada por parametro
- GetCurrentDir para saber cual es la ruta activa.

Saludos


La franja horaria es GMT +2. Ahora son las 10:00:34.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi