Я пытаюсь создать инсталляционный с Wix в VS 2012, но я не могу добавить «внешние» ссылкиДобавление внешнего DLL к проекту WIX
У меня есть мой проект FirmwareUpload который является вещь, которую я хочу установить с ссылками на рамки нашей компании. И FirmwareUploadSetup, который является моим проектом установщика. Я добавил ссылки в этом проекте к моему другому проекту и создал XML:
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
<Component Id="MainEXE">
<!-- TODO: Insert files, registry keys, and other resources here. -->
<File Source="$(var.FirmwareUpload.TargetPath)">
<Shortcut Id="startmenuFWU10" Directory="ProgramMenuDir" Name="Firmware Upload 1.0"
WorkingDirectory="INSTALLDIR" Advertise="yes" />
<Shortcut Id="desktopFWU10" Directory="DesktopFolder" Name="Firmware Upload 1.0"
WorkingDirectory="INSTALLDIR" Advertise="yes" />
</File>
</Component>
<Component Id="AstuFMS">
<File Source="$(var.Astus.FMS.TargetPath)" Name="Astus.FMS.dll" ShortName="AF" />
</Component>
<Component Id="AstusServerBusinessLogic">
<File Source="$(var.Astus.Server.BusinessLogic.TargetPath)" Name="Astus.Server.BusinessLogic.dll"
ShortName="ASBL" />
</Component>
<Component Id="ETL">
<File Source="$(var.ETLElectronique.TargetPath)" />
</Component>
<Component Id="ETLBusiness">
<File Source="$(var.ETLElectronique.Business.TargetPath)" Name="ETLElectronique.Business.dll" ShortName="EB" />
</Component>
<Component Id="ETLCommon">
<File Source="$(var.ETLElectronique.Common.TargetPath)" Name="ETLElectronique.Common.dll" ShortName="EC" />
</Component>
<Component Id="ETLData">
<File Source="$(var.ETLElectronique.Data.TargetPath)" Name="ETLElectronique.Data.dll" ShortName="ED" />
</Component>
<Component Id="ETLNet">
<File Source="$(var.ETLElectronique.Net.TargetPath)" Name="ETLElectronique.Net.dll" ShortName="EN" />
</Component>
<Component Id="ETLWindows">
<File Source="$(var.ETLElectronique.Windows.TargetPath)" Name="ETLElectronique.Windows.dll" ShortName="EW" />
</Component>
</ComponentGroup>
это работает !! когда я запускаю установщик, я получаю эти файлы в своем каталоге. Но для запуска программного обеспечения требуются другие файлы (например: log4net.dll)
Когда я скомпилирую проект «FirmwareUpload», я получаю файл log4net.dll (и многие другие). Поэтому мне нужна эта DLL в моей установке для запуска программы после ее установки.
Работали, выполнив:
<ComponentGroup Id="DocumentationComponents" Directory="INSTALLFOLDER" Source="C:\fms\hotfix\v42x\V6\Utilitaire\FirmwareUpload\FirmwareUpload\bin\Debug">
<Component Id="log4net">
<File Name="log4net.dll" />
</Component>
<Component Id="Astus.Device.Configuration">
<File Name="Astus.Device.Configuration.dll" />
</Component>
<Component Id="Astus.Device">
<File Name="Astus.Device.dll" />
</Component>
<Component Id="Microsoft.Practices.EnterpriseLibrary.Common">
<File Name="Microsoft.Practices.EnterpriseLibrary.Common.dll" />
</Component>
<Component Id="Microsoft.Practices.EnterpriseLibrary.Data">
<File Name="Microsoft.Practices.EnterpriseLibrary.Data.dll" />
</Component>
<Component Id="Microsoft.Practices.EnterpriseLibrary.ExceptionHandling">
<File Name="Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.dll" />
</Component>
<Component Id="Microsoft.Practices.ObjectBuilder">
<File Name="Microsoft.Practices.ObjectBuilder.dll" />
</Component>
</ComponentGroup>
Но есть меньше "жёстко" путь?
Я не научился Wix с командной строкой, есть подобный способ добиться этого с XML? –
Нет, xml должен явно указывать все файлы (насколько мне известно). Тепло - это простой инструмент, который вы можете добавить в качестве шага предварительной сборки для создания xml. –
Уверен, я прочитаю больше о инструменте командной строки, я жесткая командная строка была своего рода «другим инструментом» для создания MSI –