Log4net может сделать это для Вас. Вы только записали бы что-то вроде этого:
logger.info("Message");
конфигурация А определит, перейдет ли печать к консоли, файлу или обоим.
Общая концепция MSI заключается в том, что существует 1: 1 отображение между GUID компонента (уникальный идентификатор) и абсолютный путь (место установки / путь ключа). Полный путь, включая имя файла, если любой. Ознакомьтесь с обновлением ниже, чтобы узнать о новой функции Wix для автоматической магии. с этим.
Я использую несколько простых правил , чтобы иметь дело с чрезмерно сложными и бессмысленными правилами компонентов:
SampleDriver.cat
, SampleDriver.inf
, SampleDriver.sys
, SampleDriver.cer
. Все они должны совпадать как «единое целое». для развертывания. Некоторые примеры:
UPDATE :
Auto Component-GUIDs : WIX теперь имеет новый
автоматически генерируемый GUID компонента
функция, котораявычисляет GUID
до тех пор, пока целевой путь \ Program Files \ MyCompany \ MyApp \ MyFile.exe в C: \ Program Files \ MyCompany \ MyApp \ MyFile_NEW.exe . Что это означает для создания компонентов? Это новый абсолютный путь установки, поэтому вы создаете новый GUID для компонента хостинга ИЛИ добавляете новый компонент и удаляете старый (что имеет тот же эффект).Обновленный MSI предоставляет новую версию MyFile .исполняемый файл. Расположение такое же, как и раньше, это означает, что GUID компонента не должен изменяться. Это тот же файл (идентификатор), только в другой версии.
UPDATE :
Auto Component-GUIDs : WIX теперь имеет новый
автоматически генерируемый GUID компонента
функция, котораявычисляет GUID
до тех пор, пока целевой путь \ Program Files \ MyCompany \ MyApp \ MyFile.exe в C: \ Program Files \ MyCompany \ MyApp \ MyFile_NEW.exe . Что это означает для создания компонентов? Это новый абсолютный путь установки, поэтому вы создаете новый GUID для компонента хоста ИЛИ добавляете новый компонент и удаляете старый (что имеет тот же эффект).Ваш обновленный MSI предоставляет новую версию MyFile .исполняемый файл. Расположение такое же, как и раньше, это означает, что GUID компонента не должен изменяться. Это тот же файл (идентификатор), только в другой версии.
UPDATE :
Auto Component-GUIDs : WIX теперь имеет новый
автоматически генерируемый GUID компонента
функция, котораявычисляет GUID
до тех пор, пока целевой путь Что это означает для создания компонентов? Это новый абсолютный путь установки, поэтому вы создаете новый GUID для компонента хоста ИЛИ добавляете новый компонент и удаляете старый (что имеет тот же эффект).Ваш обновленный MSI предоставляет новую версию MyFile .исполняемый файл. Расположение такое же, как и раньше, это означает, что GUID компонента не должен изменяться. Это тот же файл (идентификатор), только в другой версии.
UPDATE :
Auto Component-GUIDs : WIX теперь имеет новый
автоматически генерируемый GUID компонента
функция, котораявычисляет GUID
до тех пор, пока целевой путь Что это означает для создания компонентов? Это новый абсолютный путь установки, поэтому вы создаете новый GUID для компонента хостинга ИЛИ добавляете новый компонент и удаляете старый (что имеет тот же эффект).Обновленный MSI предоставляет новую версию MyFile .исполняемый файл. Расположение такое же, как и раньше, это означает, что GUID компонента не должен изменяться. Это тот же файл (идентификатор), только в другой версии.
UPDATE :
Auto Component-GUIDs : WIX теперь имеет новый
автоматически генерируемый GUID компонента
функция, котораявычисляет GUID
до тех пор, пока целевой путь Расположение такое же, как и раньше, это означает, что GUID компонента не должен изменяться. Это тот же файл (идентификатор), только в другой версии.
UPDATE :
Auto Component-GUIDs : WIX теперь имеет новый
автоматически генерируемый GUID компонента
функция, котораявычисляет GUID
до тех пор, пока целевой путь Расположение такое же, как и раньше, это означает, что GUID компонента не должен изменяться. Это тот же файл (идентификатор), только в другой версии.
UPDATE :
Auto Component-GUIDs : WIX теперь имеет новый
автоматически генерируемый GUID компонента
функция, котораявычисляет GUID
до тех пор, пока целевой путь остается такой же. Я не пробовал, если честно, но многим кажется использовать его без проблем, иРоб Меншинг (автор Wix) утверждает это безопасно для нормального использования
. В качестве концепции я очень рекомендую это поскольку в нем есть авто-магия и он защищает вас от некоторых сложность.Минимальная разметка WiX : также обратите внимание, что вы можете не указывать множество исходных атрибутов из ваш XML-файл Wix и полагаться на настройки Wix по умолчанию, а не на жесткие значения кодирования.
Вы никогда не меняете Component / @ Guid. Вы также никогда не меняете набор ресурсов (File, RegistryKey, Shortcut, TypeLib и т. Д.) В Компоненте. Когда у вас есть новый ресурс, вы должны создать новый компонент с новым @Guid. По-настоящему сложная часть состоит в том, что новый компонент не может перекрываться (подумайте, путь к файлу, путь к ключу реестра, библиотека типов и т. Д.) Со старым компонентом.
Это в основном правила для компонентов, проверьте: http : //robmensching.com/blog/posts/2003/10/18/Component-Rules-101 .
Взгляните на Учебное пособие WiX, Файлы внутри , чтобы получить подробное объяснение правил для компонентов. По сути, здесь говорится, что вы никогда не меняете GUID компонента, поскольку это означает отказ от старого компонента и создание нового компонента.