如何在 Visual Studio 中创建独立的 exe? [复制]

Posted

技术标签:

【中文标题】如何在 Visual Studio 中创建独立的 exe? [复制]【英文标题】:How do you create a standalone exe in Visual Studio? [duplicate] 【发布时间】:2012-06-21 14:57:47 【问题描述】:

可能重复:Embedding DLLs in a compiled executable

我想将我的 C# 应用程序编译为单个 exe 文件。问题是我的项目依赖于许多其他项目,导致在我编译它时Release 文件夹中有许多 dll。有什么方法可以只制作一个包含这些 dll 的 exe?

注意:它不需要独立于 .NET 框架。我假设任何使用这个 exe 的人都会安装它。

【问题讨论】:

另见***.com/questions/189549/… 【参考方案1】:

.NET 附带一个名为 ILMerge 的工具,可以将多个程序集打包到一个文件中。你会像这样使用它:

ilmerge /target:winexe /out:myoneexecutable.exe Foo.exe Bar1.dll Bar2.dll

【讨论】:

它并没有让我担心单独的文件,但我偶然发现了这一点,现在当然不会有人意外删除文件的一部分,或者混合版本等。谢谢! 【参考方案2】:

ILMerge 是一种选择,但它不能合并 WPF 程序集。您可以将程序集作为资源嵌入并动态加载它们。见this Richter article。

【讨论】:

【参考方案3】:

我相信最接近能够编译为单个可执行文件的方法是使用 Visual Studio 的安装项目功能/向导生成标准 MSI 包,然后您可以使用它来分发您的应用程序。

不过,很可能有可用的第 3 方工具可让您将所有内容压缩到一个文件中。但我认为这不会比标准 MSI 方法为您带来任何好处 - 实际上,这只是构建过程中的一个额外手动步骤,您并不需要这样做。

【讨论】:

以上是关于如何在 Visual Studio 中创建独立的 exe? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Eclipse 中创建区域,如 Visual Studio

如何在visual studio2008中创建,编译和运行C++程序,

如何在 Visual Studio 2017 中创建 Visual c++ MFC 控制台项目

如何在 Visual Studio 中创建本地化资源?

如何在 Visual Studio 2015 中创建安装程序?

如何在 Visual Studio 2008 中创建单个可执行文件?