Страница 1 из 2

Как поменять рабочую папку програмы во время ее выполнения

Добавлено: 19 мар 2007, 12:27
namomelkor
нужно поменять рабочую папку программы вовремя ее выполнения.
ситуация такая в реестре прописываю прогу в автозапуск и тогда прога начинает использовать папку юзера для работы с:\document and settings\user
я нужно чтоб использовала папку из которой запускается

Re: Как поменять рабочую папку програмы во время ее выполнения

Добавлено: 19 мар 2007, 12:53
BBB
Так ведь в ярлыке запуска можно указать рабочую папку.

Re: Как поменять рабочую папку програмы во время ее выполнения

Добавлено: 19 мар 2007, 13:08
Игорь Акопян
а что мешает определить каталог, из которого была запущена прога через ParamStr(0)? И в дальшейшем этот путь использовать...

Re: Как поменять рабочую папку програмы во время ее выполнения

Добавлено: 19 мар 2007, 13:48
namomelkor
Да забыл сказать что автозапуск в реестре прописываю

Re: Как поменять рабочую папку програмы во время ее выполнения

Добавлено: 19 мар 2007, 13:49
namomelkor
Игорь Акопян писал(а):а что мешает определить каталог, из которого была запущена прога через ParamStr(0)? И в дальшейшем этот путь использовать...
вроде получилось так

SetCurrentDir(ExtractFilePath(Application.ExeName));

Re: Как поменять рабочую папку програмы во время ее выполнения

Добавлено: 20 мар 2007, 12:36
Blood_Magic
GetDirиSetDir

Re: Как поменять рабочую папку програмы во время ее выполнения

Добавлено: 20 мар 2007, 12:59
Absurd
Зря микросовтовцы не поставили на Program Files\... пермишены только для чтения, ой зря.

Re: Как поменять рабочую папку програмы во время ее выполнения

Добавлено: 20 мар 2007, 16:08
ntoskrnl.dll
Для этого есть функция SetCurrentDir в модуле SysUtils.
Передавай ей строку новой рабочей директории в качестве параметра:
SetCurrentDir('C:\...');

Re: Как поменять рабочую папку програмы во время ее выполнения

Добавлено: 20 мар 2007, 16:51
somewhere
&quot писал(а):Для этого есть функция SetCurrentDir в модуле SysUtils.
Передавай ей строку новой рабочей директории в качестве параметра:
SetCurrentDir('C:\...');
namomelkor вообще то так и написал в 5-ом посте.

Re: Как поменять рабочую папку програмы во время ее выполнения

Добавлено: 20 мар 2007, 18:43
namomelkor
действительно