C# 安装项目正在将内置的.NET Framework.System程序集添加到输出
我正在使用VS Community 2015。我从未见过这个问题在2010年出现。问题是,当我向输出中添加项目时,检测到的依赖项会列出我在项目中使用过的所有dll,包括内置dll: 运行安装程序后,它将继续安装100个dll文件,包括应属于.NET Framework一部分的文件,如:C# 安装项目正在将内置的.NET Framework.System程序集添加到输出,c#,wpf,visual-studio-2015,windows-installer,setup-project,C#,Wpf,Visual Studio 2015,Windows Installer,Setup Project,我正在使用VS Community 2015。我从未见过这个问题在2010年出现。问题是,当我向输出中添加项目时,检测到的依赖项会列出我在项目中使用过的所有dll,包括内置dll: 运行安装程序后,它将继续安装100个dll文件,包括应属于.NET Framework一部分的文件,如: System.IO.dll System.Linq.dll 我确保: 我已将所有项目设置为.NET 4.5.2 在安装项目中,我将目标.NET framework设置为.NET 4.5.2 在安装项目中,
- System.IO.dll
- System.Linq.dll
- 我已将所有项目设置为.NET 4.5.2
- 在安装项目中,我将目标.NET framework设置为.NET 4.5.2
- 在安装项目中,我将先决条件设置为.NET 4.5.2
这可能是与使用项目输出相关的Visual Studio问题。例如,如果您只有少数几个文件要安装到应用程序文件夹中,可能有一些要安装到GAC中,那么只需将这些单独的文件添加到目标计算机视图上的文件系统中的这些位置即可 它也可能与CopyLocal设置有关,我要确保它不是为程序集设置的
我还要确保没有导致VisualStudio的“添加引用”包含来自GAC的程序集而不是相应的SDK程序集的设置 如果您选择了一个
dll
(例如System.IO),并且您确信它已经在.NET framework中,那么您可以将属性窗口中的属性排除
设置为真
dll
将不会复制到安装文件中。您安装的机器是否有.NET 4.5.2?@Claudius I在我的问题中添加了已安装框架的屏幕截图。我现在正在开发的同一台机器上部署。为什么bin/Release文件夹不需要这些系统文件来运行应用程序?VS2015是否从操作系统不知道的VS唯一位置链接它们?@Eternal21我也面临同样的情况。你找到解决方案了吗?还是排除文件才是解决方案?@Oscar没有,我还没有找到解决方案。我也不需要删除这些文件,只需要在目标上部署多个文件即可。@Eternal21谢谢您的回答。在我的情况下,它是不可接受的,它使msi文件太大:-(