Форум: "Начинающим";
Текущий архив: 2005.12.25;
Скачать: [xml.tar.bz2];
ВнизКогда программа ищет файл в своём каталоге? Найти похожие ветки
← →
AssignFile (2005-12-06 01:38) [0]Когда программа ищет файл в своём каталоге?
например, имеем
Assign(F,"file.txt");
Всегда ли файл file.txt будет искаться в текущем каталоге или надо полный путь прописывать (что неудобно) или использовать Application.ExeName, что бы получить путь?
← →
Fay © (2005-12-06 02:19) [1]2 AssignFile (06.12.05 1:38)
> Всегда ли файл file.txt будет искаться в текущем каталоге
Всегда в текущем. Узнать его можно у GetCurrentDirectory.
> или надо полный путь прописывать (что неудобно)
ЧТО именно "неудобно" ?
← →
Германн © (2005-12-06 02:24) [2]При использовании AssignFile(F,"file.txt") файл всегда будет искаться сначала в "текущем каталоге", а затем в тех каталогах, которые данная ОС использует для таких поисков. Имхо. А уж "что надо делать" зависит от задачи. Имхо.
← →
AssignFile (2005-12-06 03:20) [3]Спасибо всем, просто как-то давно я использовал OpenDialog, и после его использования программа искала файл с настройками в другом каталоге (из которого OpenDialog открывал файл), поэтому приходилось испльзовать Application.ExeName.
← →
Германн © (2005-12-06 03:31) [4]2 AssignFile (06.12.05 03:20) [3]
Естественно, OpenDialog меняет "текущий каталог". А если нужно искать файл в каталоге, где содержится файл с программой, то тут только ExtractFilePath(Application.ExeName).
← →
Anatoly Podgoretsky © (2005-12-06 09:17) [5]AssignFile (06.12.05 01:38)
Файл один, а каталогов много, если сумеешь обеспечить перемещение файла на ходу при смене текущего каталога, то будет всегда.
← →
DD (2005-12-06 11:41) [6]А если программа, например, запускается с сервера, а в ярлыке для этой проге в качестве раб. папки прописан некий другой путь? как получить эту рабочую папку программы?
← →
Плохиш © (2005-12-06 11:43) [7]
> DD (06.12.05 11:41) [6]
> А если программа, например, запускается с сервера, а в ярлыке
> для этой проге в качестве раб. папки прописан некий другой
> путь? как получить эту рабочую папку программы?
getcurrentdir сразу после запуска.
> AssignFile (06.12.05 01:38)
> Когда программа ищет файл в своём каталоге?
А что-такое "свой каталог"?
← →
Хинт © (2005-12-06 11:51) [8]Первым делом при написании почти любой программы объявляю глобальную переменную filedir (такое уж прижилось название =) и инициализирую её в OnCreate:
filedir:=ExtractFilePath(paramstr(0));
← →
Anatoly Podgoretsky © (2005-12-06 11:53) [9]DD (06.12.05 11:41) [6]
Рабочая папка программы - это текущая папка и она имеет право меняться по ходу работы программы.
← →
DD (2005-12-06 12:04) [10]Спасибо!
← →
DD (2005-12-06 12:05) [11]GetCurrentDir - то, что надо
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2005.12.25;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.015 c