Ребрендинг набора продуктов Windows
У меня есть набор продуктов для Windows, которые я бы хотел переименовать. Некоторые из них DLL, некоторые из них EXE. Некоторые из них на C++, а некоторые на основе.NET.
Тип информации о брендинге в основном представляет собой строки, но в какой-то момент может содержать изображения.
На ум приходит несколько подходов, но ни один из них не выпадает:
- Использование директив компилятора: создайте один и тот же проект с разными определениями препроцессора
- Двоичное исправление: после сборки сборок используйте инструменты для ввода соответствующей информации
- Абстрагирование от брендинга: код приложения против IBrandingProvider и реализация провайдера в DLL
- Локальное изменение файлов метаданных. Выполните локальное редактирование всех AssemblyInfo.cs / *.rc в процессе автоматической сборки с соответствующей информацией и выполните сборку для каждого бренда.
У нас есть эта проблема в 10 наших продуктах, с двумя известными брендами в каждом.
Есть ли другие подходы для рассмотрения?
1 ответ
Если это приложения Windows, предоставляемые клиентам в виде пакета установщика Windows (MSI-файл), вы можете разработать базовый, нейтральный по отношению к бренду пакет, который затем может получить "значительное обновление", обеспечивающее брендинг. Основное обновление MSI изменяет код продукта и фактически превращает продукт в другой продукт. Если вы предоставляете установку из нескольких пакетов, содержащую как базовую версию, так и обновление, ваш клиент будет иметь только один MSI-пакет для установки.