#c# #.net #visual-studio #winforms
#c# #.net #visual-studio #winforms
Вопрос:
У меня есть проект с конфигурациями выпуска 2 . Они похожи, но с небольшими отличиями. Я хочу разместить разные значки для обоих вариантов проекта. Значок для основной формы изменен программно. Но значок, используемый для exe-файла, задается из свойств проекта (Visual Studio 2010), а на вкладке приложения значок является глобальным для всех конфигураций (например, Debug, Release A, Release B). Есть ли способ установить значок-1 для выпуска A и значок-2 для выпуска B? Единственное решение на данный момент — использовать значок с тем же именем и определить событие предварительной сборки для замены рабочего значка файлами icon-1 и icon-2.
Комментарии:
1. Для этого вы можете использовать условные обозначения msbuild
Ответ №1:
Как предлагали другие, вы можете использовать MSBuild
свойства для установки разных значков для разных конфигураций.
Вы можете отредактировать свой файл .csproj и добавить ApplicationIcon
в PropertyGroup
.
Например, следующее:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<ApplicationIcon>D:1.ico</ApplicationIcon>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<ApplicationIcon>D:2.ico</ApplicationIcon>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release A|AnyCPU'">
<ApplicationIcon>D:3.ico</ApplicationIcon>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release B|AnyCPU'">
<ApplicationIcon>D:4.ico</ApplicationIcon>
<OutputPath>binRelease B</OutputPath>
</PropertyGroup>
Примечание: я предполагаю, что вашей платформой по умолчанию является AnyCPU. Если вы хотите установить значок для разных платформ, вы можете использовать тот же способ, что и приведенный выше код.
Комментарии:
1. Возможно, мы говорим о разных вещах. Откройте проводник Windows и посмотрите значок соответствующего EXE-файла. Это невозможно изменить с помощью
Form_Load Event
, потому что исполняемый файл не запущен. Значок в форме (главное окно) легко изменить во время выполнения.2. @i486, извините за недоразумение, теперь я обновил свой ответ. У него могут быть разные значки для разных конфигураций соответствующего exe.