#1561 closed doubt (fixed)
GetAbsolutePath
Reported by: | imendez | Owned by: | Víctor de Buen Remiro |
---|---|---|---|
Priority: | normal | Milestone: | Mantainance |
Component: | Kernel | Version: | 3.1 |
Severity: | normal | Keywords: | |
Cc: |
Description
Hola, una pregunta: ¿para qué sirve la función GetAbsolutePath?
La descripción parece estar mal, ya que es la de otra función llamada GetFileName:
Devuelve el camino absoluto del directorio en el que se encuentra un fichero. Ejemplo: GetFileName("c:/windows/notepad.exe") devuelve c:/windows GetFileName("../../notepad.exe") devuelve c:/windows
La he ejecutado desde la ventana Eval con el argumento vacío (""), y me devuelve la ruta del último archivo que he compilado:
Text Ruta = GetAbsolutePath("");
Un saludo.
Change History (4)
comment:1 Changed 13 years ago by
comment:2 Changed 13 years ago by
La descripción de GetAbsolutePath
está copiada de GetFileName
y se me olvidó cambiar el nombre. Lo demás está bien.
Cuando se compila un fichero TOL internamente se mueve al directorio donde reside el fichero para que funcionen los caminos relativos.
comment:3 Changed 13 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Con un ejemplo práctico:
Al compilar
Include("file.ext")
se incluye el archivo"file.ext"
siInclude
lo localiza en su ruta relativa.Si llamas a
GetAbsolutePath("file.ext")
obtienes la ruta absoluta correspondiente a dicho archivo. La misma en la que elInclude
intenta localizarlo.Otro ejemplo, si compilas
Text path = GetAbsolutePath(".");
en el archivo principal de un proyecto (.
hace referencia al directorio actual, lo mismo que..
hace referencia al directorio superior) consigues inicializar la variablepath
con la ruta del proyecto sin tener que escribirla explícitamente, pues esa expresión obtiene la ruta del archivo en el que se ejecuta.