У меня есть большое дерево исходников .NET (185 проектов на C # и VB, из которых 60 - приложения или веб-сайты), для которых я хочу создать настройку wix. Общая идея состоит в том, чтобы иметь 1 установочный msi и сделать каждый исполняемый файл функцией, и чтобы каждое приложение было установлено в отдельном каталоге. как
%progfiles%/company/app1
/app2
/app3
До сих пор мне удалось создать файл продукта wix с деревом функций и получить инструмент высокой температуры для генерации файлов фрагментов для каждого проекта .NET. Они выглядят так:
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<DirectoryRef Id="Client.Binaries">
...component definitions...
</DirectoryRef>
<DirectoryRef Id="Client.Content">
...etc...
</DirectoryRef>
</Fragment>
<Fragment>
<ComponentGroup Id="Client.Binaries">
...ComponentRefs referencing components defined under
the DirectoryRef with the same id...
</ComponentGroup>
...etc...
Однако связь этих двух причиняет мне неприятности,
Функции могут ссылаться на ComponentGroups,
ComponentGroups ссылки на компоненты,
Компоненты содержатся в DirectoryRef.
Определение элементов Directory, на которые должны ссылаться элементы DirectoryRef, вызывает у меня затруднения.
Некоторые библиотеки используются несколькими приложениями, поэтому DirectoryRef должен указывать на несколько каталогов, и несколько DirectoryRef (с разными идентификаторами) должны указывать на один и тот же каталог () Обнаружение псевдонима каталога ), оба из которых кажутся невозможными.
У меня сложилось четкое впечатление, что я поступаю неправильно или что мне не хватает более глубокого понимания. (Не удивительно, так как моему wix-фу уже целых 3 дня)
Может ли кто-нибудь просветить меня, как зажечь свечу в этой темной и злой проблеме (не каламбур ...)