Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как определить путь к приложению из этого же приложения?

841
12 июня 2007 года
_nic
199 / / 29.07.2006
Как это можно сделать?Один пример в справке 6 борланд билдера я нашел но он подходит только для точки входа main().А как такое реализовать в gui приложение?
261
12 июня 2007 года
ahilles
1.5K / / 03.11.2005
есть API функция GetCommandLine, если у приложения нет никаких параметров, то результатом будет путь в экзешнику
в шестом билдере должно быть application->ExeName
18K
12 июня 2007 года
max_br
34 / / 10.12.2006
а чем не устраивает такое:
 
Код:
char szProcessName[STLEN];
HANDLE  hProc = GetCurrentProcess();
GetModuleBaseName(hProc,NULL,szProcessName,STLEN);
257
12 июня 2007 года
kosfiz
1.6K / / 18.09.2005
я, конечно, понимаю API и все такое, но что кто-то отменил ParamStr???
в твоем случае можно просто ParamStr(0) и все путь до экзешника в кармане или в переменной.
841
13 июня 2007 года
_nic
199 / / 29.07.2006
Цитата: kosfiz
я, конечно, понимаю API и все такое, но что кто-то отменил ParamStr???
в твоем случае можно просто ParamStr(0) и все путь до экзешника в кармане или в переменной.


А можно по подробней.А то мне раньше не приходилось сталкиватся с типом AnsiString .Как преобразовать то что возвращает ParamStr в char ?

350
13 июня 2007 года
cheburator
589 / / 01.06.2006
Цитата: max_br
а чем не устраивает такое:
 
Код:
char szProcessName[STLEN];
HANDLE  hProc = GetCurrentProcess();
GetModuleBaseName(hProc,NULL,szProcessName,STLEN);


GetModuleBaseName возвращает непосредственно имя файла, а не полный путь. Тут нужен GetModuleFileNameEx.
А вообще лучше использовать ParamStr, раз уж есть метод попроще.

7
13 июня 2007 года
@pixo $oft
3.4K / / 20.09.2006
 
Код:
szBuf DD 64 Dup(?)
cbBufLen Equ 256

Invoke GetModuleFileName,0,Offset szBuf,cbBufLen
Ну,или если на вашем языке,то
 
Код:
Char szAppName[cbLen];
GetModuleFileName(0,szAppName,cbLen);
261
13 июня 2007 года
ahilles
1.5K / / 03.11.2005
Цитата: kosfiz
я, конечно, понимаю API и все такое, но что кто-то отменил ParamStr???
в твоем случае можно просто ParamStr(0) и все путь до экзешника в кармане или в переменной.


прямо в точку, но paramstr это чисто паскалевских подход....

257
13 июня 2007 года
kosfiz
1.6K / / 18.09.2005
2ahilles
в билдере тоже есть ParamStr - это все примочки от Борланда.
841
13 июня 2007 года
_nic
199 / / 29.07.2006
Цитата: @pixo $oft
Ну,или если на вашем языке,то
 
Код:
Char szAppName[cbLen];
GetModuleFileName(0,szAppName,cbLen);



О то что надо.Спасибо.

7
14 июня 2007 года
@pixo $oft
3.4K / / 20.09.2006
Всегда пожалуйста:)А теперь видишь внизу такие весы "Добавить отзыв".Не стесняйся,нажми на них,можешь даже что-нибудь написать:),а потом нажми "Добавить отзыв".Только жми осторожно!
если ты,конечно,будешь так щедр...Впрочем,сам я не такой щедрый...так что решать вам,а завтра будут "Новые технологии":D
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог