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

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

namomelkor
Сообщения: 230
Зарегистрирован: 31 авг 2006, 13:11

нужно поменять рабочую папку программы вовремя ее выполнения.
ситуация такая в реестре прописываю прогу в автозапуск и тогда прога начинает использовать папку юзера для работы с:\document and settings\user
я нужно чтоб использовала папку из которой запускается
BBB
Сообщения: 1298
Зарегистрирован: 27 дек 2005, 13:37

Так ведь в ярлыке запуска можно указать рабочую папку.
Аватара пользователя
Игорь Акопян
Сообщения: 1440
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

а что мешает определить каталог, из которого была запущена прога через ParamStr(0)? И в дальшейшем этот путь использовать...
Изображение
namomelkor
Сообщения: 230
Зарегистрирован: 31 авг 2006, 13:11

Да забыл сказать что автозапуск в реестре прописываю
namomelkor
Сообщения: 230
Зарегистрирован: 31 авг 2006, 13:11

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

SetCurrentDir(ExtractFilePath(Application.ExeName));
Blood_Magic
Сообщения: 273
Зарегистрирован: 30 июн 2005, 14:53

GetDirиSetDir
- Чем юзер похож на обезьяну?
- Он жмет на все, что жмется, дергает все, что дергается и крутит все, что крутится.
- Чем юзер отличается от обезьяны?
- У обезьяны хватает ума не воспроизводить ту последовательность, которая приводит к краху системы.
Absurd
Сообщения: 1228
Зарегистрирован: 26 фев 2004, 13:24
Откуда: Pietari, Venäjä
Контактная информация:

Зря микросовтовцы не поставили на Program Files\... пермишены только для чтения, ой зря.
2B OR NOT(2B) = FF
ntoskrnl.dll
Сообщения: 12
Зарегистрирован: 16 янв 2007, 14:37

Для этого есть функция SetCurrentDir в модуле SysUtils.
Передавай ей строку новой рабочей директории в качестве параметра:
SetCurrentDir('C:\...');
Аватара пользователя
somewhere
Сообщения: 1858
Зарегистрирован: 31 авг 2006, 17:14
Откуда: 71 RUS
Контактная информация:

&quot писал(а):Для этого есть функция SetCurrentDir в модуле SysUtils.
Передавай ей строку новой рабочей директории в качестве параметра:
SetCurrentDir('C:\...');
namomelkor вообще то так и написал в 5-ом посте.
It's a long way to the top if you wanna rock'n'roll
namomelkor
Сообщения: 230
Зарегистрирован: 31 авг 2006, 13:11

действительно
Ответить