Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.09.30;
Скачать: CL | DM;

Вниз

Как узнать папку из которой запущена программа?   Найти похожие ветки 

 
user1024 ©   (2007-09-06 20:15) [0]

Здравствуйте
Есть .ini файл в папке с программой. Как узнать к нему путь?


 
delphiForever   (2007-09-06 20:22) [1]

ShowMessage(GetCurrentDir);


 
Efir ©   (2007-09-06 20:24) [2]

ParamStr(0)


 
Anatoly Podgoretsky ©   (2007-09-06 20:25) [3]

> Efir  (06.09.2007 20:24:02)  [2]

Application.Exename


 
Инс ©   (2007-09-06 20:26) [4]


> [1] delphiForever   (06.09.07 20:22)

Это неверно


> [2] Efir ©   (06.09.07 20:24)

А это почти верно. Правильно так:
Path:=ExtractFilePath(ParamStr(0));


 
Инс ©   (2007-09-06 20:27) [5]


> Application.Exename

А разница? Реализацию Application.Exename посмотрите.


 
delphiForever   (2007-09-06 20:29) [6]


> > [1] delphiForever   (06.09.07 20:22)
>
> Это неверно

почему ооо? GetCurrentDir - вроде возвращает путь к программе


 
Инс ©   (2007-09-06 20:31) [7]


> GetCurrentDir - вроде возвращает путь к программе

А что тогда делает SetCurrentDir? ;)

Если убедил, что вы неправы, могу объяснить подробнее почему.


 
Anatoly Podgoretsky ©   (2007-09-06 20:32) [8]

> Инс  (06.09.2007 20:27:05)  [5]

Я знаю какая реализация, но это контролируемое свойства и в любой момент реализация может измениться, вероятность такая есть.


 
Anatoly Podgoretsky ©   (2007-09-06 20:32) [9]

> delphiForever  (06.09.2007 20:29:06)  [6]

Никогда не возвращал.


 
delphiForever   (2007-09-06 20:33) [10]


> Инс ©   (06.09.07 20:31) [7]  
> А что тогда делает SetCurrentDir? ;)

изменяет каталог


 
Инс ©   (2007-09-06 20:34) [11]


> изменяет каталог

Путь к программе изменяет, что ли? :)


 
Anatoly Podgoretsky ©   (2007-09-06 20:34) [12]

> delphiForever  (06.09.2007 20:33:10)  [10]

Но по твоей идеологии устанавливает каталог из которого запущенно программа


 
delphiForever   (2007-09-06 20:37) [13]


> Путь к программе изменяет, что ли? :)

рабочий каталог кажется

только что вызвал GetCurrentDir, получил "D:\...." путь к программе откуда она запущенна, только без завершающей кавычки "\"


 
Инс ©   (2007-09-06 20:38) [14]

Объясняю подробно. У каждого процесса есть такой параметр - текущая директория. Смысл его - директория, в которой ищется файл, если полный путь не указан. Задается этот параметр в при создании процесса (см. функцию CreateProcess). При запуске программы из эксплорера, он обычно устанавливает этот параметр равным пути к файлу, однако в общем случае это разные параметры. Например, в свойствах ярлыка текущую директорию можно изменить. А если, скажем, программа в автозагрузке, то система и вовсе передаст в этом параметре при создании процесса nil.


 
delphiForever   (2007-09-06 20:42) [15]


> Инс ©   (06.09.07 20:38) [14]

пардон... благодарю за подробное объяснение...


 
user1024 ©   (2007-09-06 22:13) [16]

Инс ©

Благодарю.



Страницы: 1 вся ветка

Текущий архив: 2007.09.30;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.015 c
1-1184669132
yaJohn
2007-07-17 14:45
2007.09.30
клик на пункте меню имеющем подпункты.


3-1179905312
Dush
2007-05-23 11:28
2007.09.30
дублирование записи


6-1170415405
inex
2007-02-02 14:23
2007.09.30
переслать результат выполнения в коммандной строке


1-1184659706
Chaser
2007-07-17 12:08
2007.09.30
Загрузка в "WordApplication1" файл из TMemoryStream


1-1185019258
Makhanev Alexander
2007-07-21 16:00
2007.09.30
Совместимость с вистой...