Вниз
Скачать: CL | DM;

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

 
kami ©   (2006-01-12 14:55) [0]

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


 
MBo ©   (2006-01-12 15:08) [1]

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


 
evvcom ©   (2006-01-12 15:08) [2]

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


 
Rouse_ ©   (2006-01-12 15:18) [3]

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


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

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


 
kami ©   (2006-01-12 15:30) [5]

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


 
kami ©   (2006-01-12 15:38) [6]

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


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

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



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
2-1136455342
Sandman29
2006-01-05 13:02
2006.01.29
TDBGrid.DefaultDrawColumnCell


15-1136901397
psa247
2006-01-10 16:56
2006.01.29
Драйвер FileMon !


15-1136754461
DillerXX
2006-01-09 00:07
2006.01.29
Клиническая смерть


4-1132555715
Deka
2005-11-21 09:48
2006.01.29
Как подменить некоторые функции DLL?


15-1136819484
Yerlan Dossanov
2006-01-09 18:11
2006.01.29
SQL




   Наверх