![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как получить путь к файлу? [D7, XP]
Сергей © (2008-09-19 20:02:00)Народ подскажите пожалуйста как узнать путь к файлу начиная с той папки, где находиться програма, а не с буквы диска и тд :
Например програма находиться в:
D:\MyApp\MyApp.exe
в папке D:\MyApp есть папка \Files\Image.bmp
Как получить путь "\Files\Image.bmp"
а не "D:\MyApp\Files\Image.bmp"
???????
{RASkov} (2008-09-20 22:37:00) [1]> S:= ExtractFilepath (OpenDlg.FileName);
> Delete(S,1,Length(ExtractFileDir(Application.ExeName)));
> Edit1.Text := S + ExtractFileName (OpenDlg.FileName);
5-2-3+2 - что-то тут не то) Ага, 5-3 - достаточно :)
Renegat (2008-09-20 22:09:00) [2]> [29] Сергей (20.09.08 19:08)
хоссспадииии, шотутделаетсятоооо... %)
Нельзя ли просто сделать присвоениеS:=OpenDlg.FileName, а затем пройтись поApplication.ExeNameпоиском по последнему бэк-слэшу ("\"), подставив вDeleteрезультат поиска?
ЗЫ.
Не думайте, что вы здесь единственный-неповторимый.
Таких как вы, на этом форуме сотни.
Задавших тот же самый вопрос - не один десяток.
Натурально, скучно становится.
И вы бы, в ответ на справедливую критику в свой адрес, не исходили на мыло,
наезжая на помогших вам, а попытались бы понять, что эту критику вызвало.
Если не можете - бог вам судья.
В таком случае, как говорит госп. Германн©, примите и прочь!
KilkennyCat (2008-09-20 19:26:00) [3]
> turbouser © (20.09.08 19:24) [31]
Не совсем. Взросление - лишь способ. А лечит - конечный результат, СМЕРТЬ!!!
turbouser (2008-09-20 19:24:00) [4]
> Сергей (20.09.08 19:08) [29]
> Ха Ха. и Ха Ха.
Это лечится взрослением. Жаль не всегда...
KilkennyCat (2008-09-20 19:24:00) [5]Надеюсь, ты получил ответы на все вопросы. Ибо в дальнейшем тут вряд ли захотят тебе отвечать в дальнейшем.
Ибо все равно, несмотря на все мученья и готовое решение, приведенный тобой код - брррр....
Сергей (2008-09-20 19:08:00) [6]> А автору уже ничего не поможет. Это какой-то писатель, читать он точно не умеет. Либо ему забыли сказать, что прочитанное всегда надо осмысливать, а не только читать.
Ха Ха. и Ха Ха. Ну вы программисты интересный народ. Ето П.П. Вы что думаете вы слишком умные???
А на счет писателя, то ты сам писатель. От подумай логично, если у тебя есть "думалка", кто тут больше писал? ой, написал всякой х-ни?? Я или ты?
Я всего лишь хотел узнать как сделать то что я просил. За то вам спасибо, все работает. А вот нах меня обсуждать?
Нет чтоб подправить, подсказать, а вы... Льолики!.
S:= ExtractFilepath (OpenDlg.FileName);
Delete(S,1,Length(ExtractFileDir(Application.ExeName)));
Edit1.Text := S + ExtractFileName (OpenDlg.FileName);
KSergey (2008-09-20 15:00:00) [7]> {RASkov} © (20.09.08 14:49) [27]
> В принципе и твои посты - это всего лишь намек автору :)
Мои посты - так, выпендреж на самом деле.
А автору уже ничего не поможет. Это какой-то писатель, читать он точно не умеет. Либо ему забыли сказать, что прочитанное всегда надо осмысливать, а не только читать.
{RASkov} (2008-09-20 14:49:00) [8]> [25] KSergey © (20.09.08 14:39)
> [26] KSergey © (20.09.08 14:41)
Это не великая проблема, нужно всего лишь иметь "думалку")
Или посты с ответами - это конечные результаты?
В принципе и твои посты - это всего лишь намек автору :)
KSergey (2008-09-20 14:41:00) [9]> Германн © (19.09.08 21:04) [2]
> Delete(S,1,Length(ExtractFileDir(Application.ExeName));
> S - Строка содержащая D:\MyApp\Files\Image.bmp
В буквальном применении путь этот опасен тем, что S может содержать полный путь до файла вообще с другого диска или с другой корневой папки этого диска.
KSergey (2008-09-20 14:39:00) [10]> Сергей (19.09.08 22:27) [8]
> Мне нада используя OpenDialog
> выбрать файл
> Тогда если папка с програмой будет перенесена например с
> D:\Delphi\MyApp в C:\All Programs\MyApp програма всеровно
> будет знать правильный путь к файлу Image.bmp
А если пользователь выберет bmp-файл вообще с другого диска? Все равно резать?
Германн (2008-09-20 02:03:00) [11]
> KilkennyCat © (20.09.08 01:55) [23]
Ну если и философия, то хоть не МЛФ. И на том спасибо. :)
KilkennyCat (2008-09-20 01:55:00) [12]
> а мы дурни и рады.
дурни, потому что рады, или рады, потому что дурни?
философия!
Германн (2008-09-20 01:01:00) [13]
> Сергей (20.09.08 00:42) [19]
>
> Народ спасибо шас попробую.
Так ты до сих пор так ни разу и не пробовал применить данные тебе советы на практике!? Уже третий день морочишь нам голову ничего сам не делая?
> Я методом втыка
Вот эт точно. "Втыкаешь" нам, а мы дурни и рады. Предлагаем и то и сё и пятое и десятое.
:)
{RASkov} (2008-09-20 00:53:00) [14]> [19] Сергей (20.09.08 00:42)
> может посоветуете какие то хорошие книги ???
Тебе с картинками или без? :)
А если честно, то их полно.... попробуй вот так:
http://yandex.ru/yandsearch?text=%D1%85%D0%BE%D1%80%D0%BE%D1%88%D0%B0%D1%8F+%D0%BA%D0%BD%D0%B8%D0%B3%D0%B0+%D0%B4%D0%B5%D0%BB%D1%84%D0%B8&clid=14585
Или в вариациях....
+ [20] Марко Кэнту не плохой автор...
KilkennyCat (2008-09-20 00:47:00) [15]Тейксера и Пачеко.
Сергей (2008-09-20 00:42:00) [16]Народ спасибо шас попробую. Вобще то я ничего не изучал. Я методом втыка, но тем не менее что то получаеться. Так что если что не так разяснил, извеняйте. Уж очень хочу научиться програмировать, может посоветуете какие то хорошие книги ???
{RASkov} (2008-09-20 00:38:00) [17]> [17] KilkennyCat © (20.09.08 00:34)
> значит, твой уровень ниже :)
Да ну его.... со своим уровнем :)
Задача проста как два байта переслать, а он себе ищет проблемы)
KilkennyCat (2008-09-20 00:34:00) [18]
> я ничего не понял :(
значит, твой уровень ниже :)
учись, студент! (с) известный фильм
{RASkov} (2008-09-20 00:34:00) [19]> ТоЧтоНадо := Delete(....
Гы) Пусть вообще голову сломает :)
{RASkov} (2008-09-20 00:32:00) [20]> [13] Сергей (20.09.08 00:14)
Ёшкин кот.... вместо столькой писанины, лучшеб поизучал ответы выше....
> при чем папка "ROM" может иметь любое имя
Ну так чем тут не устраивает [1] или [2]?
А если честно, то или я ничего не понял, так, как ответы выше решают все проблемы, или ...я ничего не понял :(