3

在 VS 2013 中使用 WiX 3.8 构建我的 WiX 项目时,我得到:

heat.exe(0,0): warning HEAT5151: Could not harvest data from a file that was expected to be an assembly: C:\local\eknapp\Workspace-Dispatcher\client\software\DISP.DesktopClient\DISP.DesktopClient\bin\debug\DISP.API.UI.dll. If this file is not an assembly you can ignore this warning. Otherwise, this error detail may be helpful to diagnose the failure: The given assembly name or codebase, 
'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\WindowsBase\v4.0_4.0.0.0__31bf3856ad364e35\WindowsBase.dll', was invalid.

我检查了 GAC 和 WindowsBase.dll,版本 4.0 在那里。我用 Telerik 的 JustDecompile 查看了两个程序集,一切正常。该应用程序在 VS 中以及在与(显然有缺陷的).msi 一起安装在任意数量的机器上时都可以毫无问题地运行。

有任何想法吗?

4

1 回答 1

0

您不应该从 GAC 获取 DLL 文件。如果你真的想要,你可以使用复制本地真实属性,但是收获那些是错误的。

如果我没记错的话,这个 DLL 文件是随 .Net 一起提供的,所以您可能需要使用安装程序为您的用户安装 .net。

阅读这个 wix 错误http://sourceforge.net/p/wix/bugs/2082/

于 2014-03-25T22:13:52.157 回答