簡體   English   中英

Wix 安裝項目在構建時出錯

[英]Wix Setup Project Giving Error While Building

我在 C#(不是 VSTO App)中開發了插件。 一個解決方案中有 4 個項目。

  • Project1(類庫類型)
  • Project2(類庫類型)
  • 項目 3(C++ 項目)
  • Project4(類庫類型)

現在我想制作它的安裝程序。 我已經為它創建了一個 wix 安裝項目。 但是當我嘗試構建這個項目時,它給出了如下錯誤:

Candle.exe:無法加載擴展名“Project1.dll”,原因如下:無法加載文件或程序集“Project1.dll”或其依賴項之一。 該模塊應包含程序集清單。

如果我將配置從 x64 更改為 x86,則會出現以下錯誤:

candle.exe(0,0):錯誤 CNDL0307:程序集中未定義“Microsoft.Tools.WindowsInstallerXml.AssemblyDefaultWixExtensionAttribute”或無法在擴展“...._bin\output\Project4.dll”中定義類型加載。

這是我遇到以上(第二個)錯誤的構建日志:

C:\Program Files (x86)\WiX Toolset v3.14\bin\candle.exe
-d"DevEnvDir=C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\\" -dSolutionDir=C:\Users\...\OutlookPlugin\ 
-dSolutionExt=.sln 
-dSolutionFileName=app.sln
-dSolutionName=app 
-dSolutionPath=C:\Users\...\OutlookPlugin\app.sln
-dConfiguration=Debug 
-dOutDir=C:\Users\...\OutlookPlugin\_bin\output\ 
-dPlatform=x64 
-dProjectDir=C:\Users\...\OutlookPlugin\installers\Project1.addin.setup\ 
-dProjectExt=.wixproj -dProjectFileName=Project1.addin.setup.wixproj 
-dProjectName=Project1.addin.setup
-dProjectPath=C:\Users\...\OutlookPlugin\installers\Project1.addin.setup\Project1.addin.setup.wixproj 
-dTargetDir=C:\Users\...\OutlookPlugin\_bin\output\ 
-dTargetExt=.msi -dTargetFileName=Project1.addin.setup.msi 
-dTargetName=Project1.addin.setup 
-dTargetPath=C:\Users\...\OutlookPlugin\_bin\output\Project1.addin.setup.msi 
    -out obj\\Debug\ -arch x64 
    -ext "C:\Program Files (x86)\WiX Toolset v3.14\bin\\WixUIExtension.dll" 
    -ext "C:\Program Files (x86)\WiX Toolset v3.14\bin\\WixNetFxExtension.dll" 
    -ext ..\..\_bin\output\Project4.dll 
    -ext ..\..\_bin\output\Project3.dll 
    -ext ..\..\_bin\output\Project2.dll 
    -ext ..\..\_bin\output\Project1.dll Product.wxs

我已經添加了對它的所有引用 & Wix 編輯器沒有顯示任何錯誤。

我不知道為什么會出現此錯誤。

需要它的解決方案。 謝謝大家。

...._bin\output\Project4.dll是 WixExtension 嗎?

如果不是(我猜不是),您需要刪除路徑前的-ext開關,這樣 WiX 工具集就不會嘗試將文件加載為 WixExtension。 可能也想對所有這些做同樣的事情。

-ext ..\..\_bin\output\Project4.ui.dll 
-ext ..\..\_bin\output\Project3.dll 
-ext ..\..\_bin\output\Project2.dll 
-ext ..\..\_bin\output\Project1.dll

暫無
暫無

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

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