簡體   English   中英

如何將WIX擴展名添加到Nuget包中以供WIX安裝程序項目使用

[英]How to add WIX extension to a Nuget package for use by a WIX installer project

我有一個自定義WIX擴展名(dll),我想將其作為Nuget包進行管理,可以在Visual Studio 2017中用於WIX安裝程序項目。起初,Nuget包無法安裝,出現此錯誤:

無法安裝軟件包“ MyExtension 1.0.10859”。 您正在嘗試將此軟件包安裝到面向“不支持,版本= v0.0”的項目中,但是該軟件包不包含任何與該框架兼容的程序集引用或內容文件。

有人建議我需要創建一個.targets文件,以將其包含在我的程序包中,如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<Project ToolsVersion="4.0"  
 xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 <ItemGroup>
   <WixExtension 
   Include="$(MSBuildThisFileDirectory)..\tools\MyExtension.dll" />
 </ItemGroup>

現在,Nuget軟件包已安裝到packages文件夾中並添加到我的packages.config文件中,但是程序集MyExtension.dll並未添加到WIX安裝程序項目的參考中。 安裝Nuget軟件包時,如何將其添加到“參考”中?

當我通過StackOverflow搜索時,在“ 如何將Nuget軟件包dll添加到Wix安裝程序”中看到了該解決方案。 如果您要安裝的軟件包來自第三方並且您無法控制其包裝方式,那么這是一個很好的解決方案。 但是我正在創建Nuget軟件包,並希望將其打包為可以直接安裝到WIX項目中的方式。

如何將WIX擴展名添加到Nuget包中以供WIX安裝程序項目使用

您可以創建一個新的空白項目(庫),然后在該新項目中安裝nuget-package。 然后將.dll作為組件添加到安裝程序中:

<Component Id="cmpId1"  Guid="BF985D52-BA8C-4E4F-84CC-B5A95520FBD4">
      <File Id="fileId1" KeyPath="yes" Source="$(var.NugetCollectorProject.TargetDir)\Unity.Abstractions.dll" />
   </Component>

證書: 如何將Nuget軟件包dll添加到Wix安裝程序

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM