Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Определение глобального символа условной компиляции


kami ©   (2006-01-12 14:55:00) 

Есть 2 проекта, использующие один общий модуль. В зависимости от того, в какой проект он включается, в модуле должен быть разный код. Пока приходится менять вручную в самом модуле {$define prog1}на {$define prog2}. Как можно определить (допустим) в главном юните каждой программы символ условной компиляции, видимый в общем модуле, чтобы можно было делать "Project=>Build All Projects"?


Плохиш   (2006-01-12 16:37:00) [1]

Вставь {$DEFINE PROG1} в первую строку файла prog1.dpr


kami   (2006-01-12 15:38:00) [2]

kami ©   (12.01.06 15:30) [5]
Add-on:
Конечно, сам опять виноват - нужно было сделать общий TCustomMyClass, и потом уже в каждой программе наследоваться от него. Но - я понял это слишком поздно, уже гораздо проще делать так :-))
<риторический вопрос>И когда я научусь думать о удобстве расширения функционала без больших переделок? </риторический вопрос>


kami   (2006-01-12 15:30:00) [3]

MBo ©   (12.01.06 15:08) [1]
В том то и дело, что модуль должен быть один, так как в нем куча общего кода (к тому же, он еще в разработке), меняется только несколько процедур в зависимости от проекта. Если я сделаю 2 модуля, то запутаюсь с тем, в каком модуле более новый код (уже неоднократно за собой замечал такое, и повторять не хочу).
evvcom ©   (12.01.06 15:08) [2]
Точно !!!!
Спасибо большое !


Rouse_   (2006-01-12 15:19:00) [4]

А блин, не про то вопрос :)


Rouse_   (2006-01-12 15:18:00) [5]

{$DEFINE PROG1}
 {$IFDEF PROG1}
   {$UNDEF PROG1}
   {$DEFINE PROG2}
 {$ENDIF}


MBo   (2006-01-12 15:08:00) [6]

В каждом проекте сделай модулёк с одинаковым именем, содержащий нужный дефайн


evvcom   (2006-01-12 15:08:00) [7]

Project -> Options... -> Directories/Conditionals -> Conditional Defines


Наверх

Титульная страница Поиск, карта сайта Написать письмо