【问题标题】:Which files in bin/Release folder are needed? [closed]需要 bin/Release 文件夹中的哪些文件? [关闭]
【发布时间】:2020-11-20 00:24:18
【问题描述】:
为我的应用程序构建发布版本后,我进入 bin/Release 文件夹,看到了一堆我的项目依赖项,例如“Newtonsoft.Json.dll”、“System.Memory.dll”等。
我参考了What files are mandatory in release windows form? 之类的帖子,发现我的应用程序需要这些依赖项才能顺利运行。
但是,我只需要将一个文件 - 我的“main.dll”复制到应用程序(我正在为 Revit 创建一个附加组件),它就可以正常工作。所以,我想知道哪些文件可以被排除?这是因为我的应用程序还在修改中,正在添加新的依赖项,我想知道哪些文件是不需要的。
是否有已经自动包含在 windows 中的依赖项列表?
【问题讨论】:
标签:
c#
.net
wpf
visual-studio
【解决方案1】:
简而言之,您可能都需要它们和有时一些。长版本——这取决于。以下不是详尽的清单,但有几点需要考虑:
- 您使用的 .NET 框架的任何部分都不会通常复制到输出目录
- 您列出的示例通常应复制到输出,因为它们不是的一部分。 NET 框架
- 您可以通过将
Copy Local 设置为true 来强制复制引用,这会导致输出目录中可能出现不必要的DLL
- 您可能在 GAC 中有一些依赖项,这意味着它们可能不会被复制到输出目录。例如,您是否在使用 Infragistics 等控件——您的所有用户是否都在他们的机器上安装了这些控件?可能不是,他们可能不应该,所以包括他们...
- 编译器通常很聪明,不会包含您没有实际代码引用的内容(如果只有动态调用,这可能会导致问题)