Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: как программно определить активную конфигурацию  (Прочитано 6578 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Malaja
Команда клуба

de
Offline Offline
Пол: Женский

« : 26-07-2010 08:23 » 

Господа,
имеем: проект имеет несколько конфигураций (например: Debug_V1 и Debug_V3).
вопрос: как в процессе выполнения программы определить, в какой из двух конфигураций прошла компиляция?
В c++ это решалось легко и просто через defines. А вот в с# я что-то никак не найду...
Записан

холоднокровней, Маня, Ви не на работе
---------------------------------------
четкое определение сущности бытия:
- А мы в прошлом или в будущем?- спросила Алиса.
- Мы в жопе, - ответил кролик.
- А "жопа" - это настоящее? - спросила Алиса.
- А "жопа" - это у нас символ вечности.
baldr
Команда клуба

cy
Offline Offline
Пол: Мужской
Дорогие россияне


WWW
« Ответ #1 : 26-07-2010 08:37 » 

Заранее извиняюсь за VB.NET, на C# не пробовал еще... Такой вариант у меня работает:
Код: (Text) VB.NET
#If CONFIG = "Debug_V1" Then
   ' Some code here
#ElseIf CONFIG = "Debug_V2" Then
   ' Some code here
#End If
Записан

Приличный компьютер всегда будет стоить дороже 1000 долларов, потому что 500 долларов - это не вполне прилично
Malaja
Команда клуба

de
Offline Offline
Пол: Женский

« Ответ #2 : 26-07-2010 09:12 » 

baldr,

спасибочки!  Улыбаюсь Скромно так...
Я искала какие-то функции в системных классах... А ларчик просто открывался...

Для тех, кому понадобится, c#-вариант:

Код:
int nActualVersion = 0;
#if CONFIG == Debug_V1
   nActualVersion = 1;
#elif CONFIG == Debug_V3
   nActualVersion = 3;
#endif
Записан

холоднокровней, Маня, Ви не на работе
---------------------------------------
четкое определение сущности бытия:
- А мы в прошлом или в будущем?- спросила Алиса.
- Мы в жопе, - ответил кролик.
- А "жопа" - это настоящее? - спросила Алиса.
- А "жопа" - это у нас символ вечности.
Malaja
Команда клуба

de
Offline Offline
Пол: Женский

« Ответ #3 : 16-11-2010 16:31 » 

Небольшое дополнение (сегодня коллега на этом попался минут на 20..., а я сначала не додумалась ему это сообщить):

Главное, не забыть определить правильно CONFIG:

в project -> properties -> build для каждой конфигурации в "conditional compilation symbols" должно стоять соответственно:

для Debug_V3:
Код:
CONFIG = Debug_V3 

для Debug_V1:
Код:
CONFIG = Debug_V1 
Записан

холоднокровней, Маня, Ви не на работе
---------------------------------------
четкое определение сущности бытия:
- А мы в прошлом или в будущем?- спросила Алиса.
- Мы в жопе, - ответил кролик.
- А "жопа" - это настоящее? - спросила Алиса.
- А "жопа" - это у нас символ вечности.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines