|
Вопрос # 6 500/ вопрос открыт / |
|
Здравствуйте, эксперты!
Скажите, пожалуйста, можно ли в Delphi 2010 командой {$DEFINE smth} задефайнить эт нечто глобально? То есть не в пределах юнита, а на весь проект разом. Я знаю, что есть в свойствах проекта пункт Conditional Defines, но неудобный, потому что не даёт возможности быстро переключать дефайны - каждый раз заново нужно вводить их и удалять. Так вот, можно ли это делать в коде? Где, если да?
 |
Вопрос задал: dmistand (статус: 1-ый класс)
Вопрос отправлен: 12 декабря 2013, 18:54
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: DNK
Здравствуйте, dmistand!
Была как-то подобная нужда. Поступил вот так:
1. Указываю один вариант в пункте Conditional Defines.
2. Создаю группу проектов.
3. Делаю для проекта "Save Project As..."
4. Указываю для нового проекта альтернативные Conditional Defines.
5. Включаю новый проект в группу, созданную в пункте 2.
После этого достаточно вызвать Project Manager (Ctrl + Alt + F11) и даблкликом активировать проект с нужными Defines. PAS-файлы проекты используют совместно, единственно нужно в актуальном состоянии поддерживать оба DPR-файла проектов.
D7.
 |
Ответ отправил: DNK (статус: Студент)
Время отправки: 13 декабря 2013, 11:47
Оценка за ответ: 5
Комментарий к оценке: подал отличную идею
|
Мини-форум вопроса
Всего сообщений: 7; последнее сообщение — 13 декабря 2013, 15:53; участников в обсуждении: 2.
|
min@y™ (статус: Доктор наук), 13 декабря 2013, 08:35 [#1]:
А uses <модуль_с_дефайном>, где надо, не подойдёт?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
dmistand (статус: 1-ый класс), 13 декабря 2013, 09:38 [#2]:
min@y™: спасибо, подходит.
Но в проекте очень много модулей, не хочется загромождать uses ещё больше. Тем более, что с uses возникают непонятности (см вопрос 6499 примечание 2). Нет ли ещё способа, кроме conditional defines и модуля в дефайном?
|
|
min@y™ (статус: Доктор наук), 13 декабря 2013, 10:13 [#3]:
Цитата (dmistand):
Но в проекте очень много модулей, не хочется загромождать uses ещё больше.
"Очень много" - это сколько? 100, 500, или 100500?
Цитата (dmistand):
Нет ли ещё способа, кроме conditional defines и модуля в дефайном?
Не знаю.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
dmistand (статус: 1-ый класс), 13 декабря 2013, 11:01 [#4]:
min@y™: около 70. Но как я писал ранее - хватает и двух-трёх, чтобы вызвать необъяснимые глюки...
Спасибо, скорее всего буду пользоваться отдельным модулем, значит.
|
|
min@y™ (статус: Доктор наук), 13 декабря 2013, 11:12 [#5]:
Цитата (dmistand):
Но как я писал ранее - хватает и двух-трёх, чтобы вызвать необъяснимые глюки...
Судя по отзывам в интернетах, чем свежее версия, тем больше в неё добавлено глюков.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
13 декабря 2013, 11:54: Вопрос перемещён из тематического раздела Delphi » Общие вопросы по программированию в раздел Delphi » Оболочка Delphi, компилятор, версии среды и т.д. модератором DNK
|
dmistand (статус: 1-ый класс), 13 декабря 2013, 15:52 [#6]:
min@y™: та необъяснимая фигня всё-таки имеет объяснение. Привёл его в соответствующей теме в примечании.
|
|
dmistand (статус: 1-ый класс), 13 декабря 2013, 15:53 [#7]:
DNK: спасибо, идея классная!
|
13 декабря 2013, 15:54: Статус вопроса изменён на решённый (изменил автор вопроса — dmistand)
13 декабря 2013, 16:01: Вопрос вновь открыт (изменение состояния произвёл автор вопроса — dmistand)
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|