Несколько программ из одного и того же исходного кода, правильные значки программC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Несколько программ из одного и того же исходного кода, правильные значки программ

Сообщение Anonymous »

Я использую C++ VS 2010. Исходный код используется для ряда различных продуктов. Компилятор настроен на создание нескольких конфигураций, по одной для каждого EXE-файла. Каждая конфигурация имеет отдельную директиву препроцессора для создания EXE-файла. Я пытаюсь правильно настроить файл ресурсов, чтобы установить правильный значок программы для каждого EXE. У меня есть следующий набор в файле .rc2, включенном в файл .rc

Код: Выделить всё

#ifdef CFGA
IDI_ICON ICON IconA.ico

#elif defined(CFGB)
IDI_ICON ICON IconB.ico

#elif defined(CFGC)
IDI_ICON ICON IconC.ico

#elif defined(CFGD)
IDI_ICON ICON IconD.ico

#elif defined(CFGE)
IDI_ICON ICON IconE.ico

#else
IDI_ICON ICON IconA.ico
#endif
Когда я загружаю ресурсы в проекте, появляется значок IDI_ICON, но только IconA, независимо от выбранной конфигурации. Когда я компилирую, все становится очень странно:
CFGA — получает IconC
CFGB — получает IconA
CFGC — получает IconA
CFGD — получает IconC
CFGE — получает значок Windows EXE по умолчанию.
Я просмотрел весь проект в поисках ссылок на значки и не увидел ничего странного. В файле DSP есть раздел, определяющий исходные файлы. Он определял только IconA, но остальные значки я добавил вручную без каких-либо изменений в поведении. Файл vcxproj.filters также имеет имя IconA, но остальное я добавил без изменений. Я даже пытался изменить порядок в файле, но безрезультатно.
В файле .rc вообще не определены значки.
Когда я прокомментировал вынул все, кроме определения IconC в файле rc2, затем закрыл и перезагрузил проект. Значок, который отображается в представлении ресурсов, является правильным, однако при компиляции EXE-файлу назначается значок IconA.
Это сводит меня с ума уже два дня, и я не нашел, где кто-нибудь еще сталкивался с этим. Есть ли решение этой проблемы?

Подробнее здесь: https://stackoverflow.com/questions/792 ... ns-correct
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»