|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
02.06.2012, 16:17 | #1 |
Веб-дизайнер
Форумчанин
Регистрация: 11.08.2011
Сообщений: 305
|
Использование Uses
Доброго времени суток.
На протяжении нескольких лет я пишу один проект, в коде которого накопилось уже достаточно "мусора", по этому сейчас я благополучно перечитываю и переделываю некоторые моменты программы. Теперь я пришел к ситуации, когда отдельные классы программы стоило бы вынести в отдельные файлы, тем самым не забивая код программы лишним. На примере одного из классов я создал MySource.pas, где описал все как нужно. Впрочем, все работает отлично, вот только возник вопрос по месторасположению файла MySource.pas (MySource.dcu, если быть точнее, ведь компилятор требует именно его). Внутри проекта я включаю файл в Uses: Код:
1. Файл MySource.dcu лежит в одной из папок, описанных в Library Path. 2. Файл MySource.dcu лежит в корневой папке программы (если Delphi не установлена на компьютере). Можно ли каким-то образом прописать конкретный путь к этому файлу? Например, было бы хорошо разместить все эти файлы в отдельной папке Data, которая находится в папке с проектом. Как правильно прописать путь к модулю? P.S. Приношу мои извинения, если изначально вариант хранения отдельных кусков кода был неверен. Я было думал об использовании DLL-библиотек, но в таком случае в коде программы придется заново описывать функции которые нужно импортировать (что никак не вяжется с задачей сделать код чище). По этому больше склоняюсь к выбранному варианту. |
02.06.2012, 16:25 | #2 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
Project - Options - Search Path
там прописывается сколько угодно путей к каталогам, в которых компилятор будет искать модули. Если компилировать в командной строке, то это опция /U > если изначально вариант хранения отдельных кусков кода был неверен да нет, всё верно. Посмотрите на VCL - всё раложено по полочкам, так и должно быть. > если Delphi не установлена на компьютере если Дельфи нет на компе, то абсолютно не важно, где лежит MySource.dcu. Кроме Дельфи он никому не нужен )
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
Последний раз редактировалось veniside; 02.06.2012 в 16:28. |
02.06.2012, 16:29 | #3 | |
Веб-дизайнер
Форумчанин
Регистрация: 11.08.2011
Сообщений: 305
|
veniside, а как обратиться к директории проекта? {Project}? Или в качестве пути можно просто использовать "Data\"?
Цитата:
Последний раз редактировалось kettanaito; 02.06.2012 в 16:36. |
|
02.06.2012, 16:48 | #4 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
> в качестве пути можно просто использовать "Data\"?
вроде да, я обычно полный путь указываю, но должны работать и относительные. > А для работоспособности программы файлы стоит хранить в каком формате? DCU ведь. для работы программы нужен .exe бинарник. DCU нужны исключительно на этапе компиляции.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
02.06.2012, 16:55 | #5 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
о_О а что "Project - Add to Project..." уже не тот?
Просто добавьте нужные вам сорцы и все. Далее, как обычно, подключайте их в Uses. |
02.06.2012, 16:59 | #6 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
> Add to Project
можно, конечно, но если в библиотеке много модулей, замахаешься так добавлять.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
02.06.2012, 16:59 | #7 |
Веб-дизайнер
Форумчанин
Регистрация: 11.08.2011
Сообщений: 305
|
veniside, Человек_Борща, разве приложение не будет требовать этих исходников? Для примера, я использую пару нестандартных компонентов, то без некоторых их исходников программа просто не запустится. Думаю с моими модулями будет точно так же.
|
02.06.2012, 17:11 | #8 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
> без некоторых их исходников программа просто не запустится
ерунда. Максимум, что может потребоваться, это DLL/BPL (это если с рантайм пакаджами) ну и может какие-то ресурсы, типа картинок, звуков и прочее, если они не вкомпилированы в бинарник. Исходники и dcu вашей скомпилированной программе даром не нужны.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
02.06.2012, 17:36 | #9 |
Веб-дизайнер
Форумчанин
Регистрация: 11.08.2011
Сообщений: 305
|
Ясно. Благодарю за ответы
|
02.06.2012, 19:14 | #10 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
Уважаемый. Исходники нужны только для сборки exe програмиистом.
А exe может существовать и без них. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Использование If | Macklay | PHP | 4 | 14.05.2012 20:03 |
Использование БД | glazik | БД в Delphi | 13 | 22.02.2012 09:14 |
Использование (...) в с++ | Byurrer | Общие вопросы C/C++ | 12 | 06.04.2011 23:04 |
использование семафоров | Sparky | Win Api | 0 | 30.05.2010 15:57 |
Использование while и while do | prikolist | Общие вопросы C/C++ | 20 | 06.04.2009 18:40 |