Главная страница
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.03 c
2-1188565851
writebuf(nil);
2007-08-31 17:10
2007.09.30
Проверить ASCII строку


2-1188929716
Slip
2007-09-04 22:15
2007.09.30
Сбой при запуске Delphi


3-1179747391
deras
2007-05-21 15:36
2007.09.30
Триггеры в master-detail


15-1188374949
schaps
2007-08-29 12:09
2007.09.30
Может есть у кого FastReport 2.45 ( открывает frf)


15-1188140037
leonidus
2007-08-26 18:53
2007.09.30
Разыскивается Янис Прасоль