![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать путь где находится данная копия программы?
WebSqlNeederr © (2006-06-23 15:47:00)Нужно сохранять лог файлы но для этого мне нужно знать расположение данной копии программы. Как это узнать?
Германн (2006-06-25 02:56:00) [1]
> Плохиш © (25.06.06 00:23) [18]
> Афигеть, почему ветку не закрыли после поста [1]?
Имхо:
1. Потому что это "Начинающим". А "Афигевать " в данной конференции - дурной тон.
2. Потому что Сергей М. © (23.06.06 16:21) [4].
Это моё ИМХО.
Johnmen (2006-06-25 00:51:00) [2]
> Плохиш © (25.06.06 00:23) [18]
>
> Афигеть, почему ветку не закрыли после поста [1]?
Потому, что модераторы почивать изволят...
Плохиш (2006-06-25 00:23:00) [3]Афигеть, почему ветку не закрыли после поста [1]?
Пусик (2006-06-25 00:15:00) [4]> Для этого не нужно знать расположения экзешника
Ну почему не нужно? Если человек желает сохранить логи в каталог с программой - это его право.
Когда у него встанет другая задача - он задаст вопрос в другой ветке. Ну и ответы на него там же будут, естественно.
TUser (2006-06-24 20:58:00) [5]> Нужно сохранять лог файлы но для этого мне нужно знать расположение данной копии программы.
Для этого не нужнознать расположения экзешника. Более того, если ты в эту папку что-то пытаешься писать, то в большинстве случаев - это ошибка. Потому что
(а) на компе может быть заведено несколько пользователей, каждому нужны свои настройки
(б) злые люди (типа меня) имеют обыкновение закрывать доступ в Program Files на записть для юзеров. Скажешь не имею права? И буде твоя программа начнет туда что-то писать под пользовательскими правами - будут матюги автору. Не стоит в этом вопросе подражать таким примерам, как Delphi или Magic Forum :))
Шпиён (2006-06-24 20:20:00) [6]
> C@N © (24.06.06 20:12) [14]
> так тут речи об ярлыках не идет...
Речь идет о том, как узнать -
> расположение данной копии программы
GetCurrentDir в общем случае для этой цели не подходит. Простейший пример - с ярлыком.
Еще пример - открытие файла, расширение которого ассоциировано с Вашей программой. Что даст GetCurrentDir в этом случае?
C@N (2006-06-24 20:12:00) [7]
> А теперь попробуйте создать ярлык для программы, прописать
> там рабочую папку, отличную от того каталога, где находится
> программа....и запустить с помощью этого ярлыка.
так тут речи об ярлыках не идет... челу надо узнать путь откуда прога запушена...GetCurrentDir...я всегда ей пользуюсь для такой ерунды...
Шпиён (2006-06-24 20:04:00) [8]
> C@N © (24.06.06 19:51) [12]
А теперь попробуйте создать ярлык для программы, прописать там рабочую папку, отличную от того каталога, где находится программа....и запустить с помощью этого ярлыка.
C@N (2006-06-24 19:51:00) [9]form1.caption:=GetCurrentDir
!_SM_! (2006-06-24 19:12:00) [10]
> Германн © (24.06.06 03:18) [10]
Ну блин при старте проги и узнать....
т.е. в в переменную Dir запишиться путь....
или опять чего то не то....
0-это текущий 1-А 2-В и т.д.
Германн (2006-06-24 03:18:00) [11]
> !_SM_! (24.06.06 03:08) [9]
> var Dir: String;....GetDir(0, Dir);Dir - Полный путь к программе,
> без имени проги.
Читаем хэлп.
"Use GetDir to determine the current directory on the drive specified by the D parameters."
И что дальше? В огороде бузина, а в Киеве дядька?
!_SM_! (2006-06-24 03:08:00) [12]var Dir: String;
....
GetDir(0, Dir);
Dir - Полный путь к программе, без имени проги.
Германн (2006-06-24 02:20:00) [13]
> Gero © (24.06.06 00:45) [7]
> Есть еще права.
Есть. Но это уже перебор! Разрешить юзеру запустить программу из некоего каталога, и при этом запретить запись в вышеуказанный? Это уже для продвинутых.
Gero (2006-06-24 00:45:00) [14]Есть еще права.
Cashmare (2006-06-23 17:57:00) [15]ExtractFilePath(Application.ExeName)
> А если "данная копия" стартована с ридонли-носителя ?
ну не будет работать, какие проблемы :)
Как это узнать?- это-то работать будет :)))
StriderMan (2006-06-23 16:52:00) [16]
> А если "данная копия" стартована с ридонли-носителя ?
ну не будет работать, какие проблемы :)
Сергей М. (2006-06-23 16:21:00) [17]А если "данная копия" стартована с ридонли-носителя ?
Handle (2006-06-23 15:58:00) [18]
Application.ExeName
Amoeba (2006-06-23 15:53:00) [19]ExtractFilePath(ParamStr(0))
Dmitrij_K (2006-06-23 15:53:00) [20]ParamStr(0)