InstallShied LE不包含来自构建DLL的扫描的依赖项

时间:2016-11-18 13:56:44

标签: c# dll visual-studio-2013 installshield-le

我正在尝试为.NET Tablet应用程序构建一个安装程序,它是另一个同事通过Subversion(SVN)提供的解决方案(非常好用

问题是当我构建安装程序时,某些DLL在生成和安装时缺失,尽管它们位于"主要输出"捆绑:

picture showing that MahApps.Metro.dll is present and checked

安装程序构建输出显示:

15>Adding file 'log4net.dll' that is a dependency of component '***.Sortie_principale'
15>Adding file 'log4net.FX2.dll' that is a dependency of component '***.Sortie_principale'
15>Adding file 'Microsoft.Practices.ServiceLocation.dll' that is a dependency of component '***.Sortie_principale'
15>Adding file 'MigraDoc.DocumentObjectModel-WPF.dll' that is a dependency of component '***.Sortie_principale'

该程序需要这些DLL,当我尝试在我的计算机上安装它时它会崩溃

规格:

  • Visual Studio 2013 Premium更新5
  • InstallShield 2013(当时2015年)限量版

到目前为止我尝试过:

  • 有些DLL是nuget引用,我删除了它们,但是其他一些DLL也是nuget包,并且包含在内。一个DLL是解决方案的一个项目,因此nuget似乎不对此负责
  • 在另一个文件夹中查看解决方案
  • 那些丢失的DLL不在GAC中
  • 文件夹C:\Windows\Microsoft.NET\Framework(64)?\v4.0.30319\Temporary ASP.NET Files
  • 内置于发布模式
  • anyCPU build
  • 特定版本:true
  • 尝试删除/重新注入主要输出
  • 尝试使用dependencies from scan at build
  • 删除/重新注入主要输出的依赖项
  • 重新创建了InstallShield项目,效果不佳

我还能进一步检查什么?我可以很容易地比较我的同事的项目配置。

更新1

我发现了一些奇怪的事情:显然,如果Installshield找不到依赖项目(错误-6248)并且这些DLL是这个依赖项目的一部分,它不会包含它们:

A -> (depends on) B -> C
If B is not found then C is not included, even if A -> C in the project dependencies.

感谢您的帮助!

0 个答案:

没有答案