c# - 如何将 Windows 窗体应用程序 (C#) 制作成单个 exe 文件?

标签 c# winforms visual-studio-2013

<分区>

我正在使用 Visual Studio 2013

我刚刚用它制作了我的第一个 Windows 应用程序(一个 Windows 窗体),如果可能的话,我想将库和配置/ list 等文件嵌入到一个可执行文件中,以便更方便。可以吗?如果是怎么办?

非常感谢

最佳答案

无论如何,您都不应该部署 bin\Release 文件夹中的所有文件。 vshost 文件用于在 Visual Studio 中进行调试,不应部署它们。 pdb文件用于调试,不需要部署。如果您的应用程序不将配置文件用于任何您不需要部署它的地方。不过,您将需要部署任何其他程序集,您可以使用 ILMerge 解决这些问题。

话虽如此,我的建议是创建一个安装程序或创建一个自执行存档(zip 或 7z),而不是尝试使用 ILMerge 来获取与您的应用程序一起部署的任何第三方程序集。

更新

为了清楚起见,这里是我添加了 JSON.NET(发布版本)的默认 WinForms 应用程序的文件列表:

  • Newtonsoft.Json.dll
  • Newtonsoft.Json.xml
  • WindowsFormsApplication1.exe
  • WindowsFormsApplication1.exe.config
  • WindowsFormsApplication1.pdb
  • WindowsFormsApplication1.vshost.exe
  • WindowsFormsApplication1.vshost.exe.config
  • WindowsFormsApplication1.vshost.exe.manifest

如果应用不使用配置文件,您需要部署的唯一文件是 Newtonsoft.Json.dllWindowsFormsApplication1.exe

关于c# - 如何将 Windows 窗体应用程序 (C#) 制作成单个 exe 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28750270/

相关文章:

c# - 如何处理 Windows 窗体中文本框的完全更改?

c# - 如何保存在 PictureBox 上创建的图形?

asp.net - 初始化字符串的格式不符合规范,从 NLog 中的索引 158 开始

c# - 确保在 Visual Studio 中为 Windows Phone 正确设置引用

c++ - Visual-Studio 2013 改变了我的 wstring

c# - UWP 中没有 system.runtime.caching

c# - 通知所有组件 Blazor 中的身份验证已更改

c# - 列表中的对象关系?

c# - 创建自签名 CA 证书并在 IIS 中安装

windows - 使用 CreateWindow 并向其添加按钮等?如何?