Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.07.2008, 12:08   #1
Darth
 
Регистрация: 08.06.2008
Сообщений: 7
По умолчанию Получение пути запуска

Есть программа, допустим лежит на C:\program\program.exe
и есть .bat файл запускающий эту программу, допустим на диске d:\BAT\1.bat
Как можно в программно получить путь, откуда она была запущена, т.е. путь d:\BAT?
Изначально неизвестно в какой папке находиться .bat, известна только папка самой программы
Darth вне форума Ответить с цитированием
Старый 28.07.2008, 12:09   #2
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Как ты узнаешь что нужно запустить d:\BAT\1.bat?
Hollander вне форума Ответить с цитированием
Старый 28.07.2008, 12:14   #3
Darth
 
Регистрация: 08.06.2008
Сообщений: 7
По умолчанию

структура .bat файла

@Echo OFF
с:\program\program.exe
@echo ON
exit

не программа запускает батник, а батник программу. И запускают его(батник) руками.
Darth вне форума Ответить с цитированием
Старый 28.07.2008, 13:02   #4
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Если батник лежит в другой папке, нежели программа, то при запуске программы текущим будет путь не до программы, а до батника. А значит поступай так:
Код:
GetDir (0, S);
Arigato вне форума Ответить с цитированием
Старый 28.07.2008, 13:33   #5
Darth
 
Регистрация: 08.06.2008
Сообщений: 7
По умолчанию

поступил куда проще, в батнике
Код:
@Echo OFF 
с:\program\program.exe "%~dp0"
@echo ON
exit
и в программе, при запуске:

Код:
path:=UpperCase(ParamStr(1));
в переменную path заносится то что нужно
Darth вне форума Ответить с цитированием
Старый 28.07.2008, 13:37   #6
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Мне не кажется, что этот вариант оказался проще. Ну да главное, что бы задача была решена
Arigato вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Право запуска приложений Cyxo Операционные системы общие вопросы 14 17.12.2009 19:50
Проблема запуска проги Rostislav Общие вопросы .NET 1 23.05.2008 12:10
Ошибка запуска приложения Killer_djon БД в Delphi 3 21.12.2007 10:33
Панель быстрого запуска. Небесный Операционные системы общие вопросы 3 18.12.2007 00:21
Параметры запуска проги GAGARIN-NEW Общие вопросы Delphi 7 18.10.2007 23:10