6

.Net 应用程序可以转换为单个 .exe 可移植应用程序吗?

即没有安装程序,它只是运行?

我想所有的dll、资源等都需要嵌入到exe中?如果是这样,我该怎么做?

谢谢

4

5 回答 5

8

您可以使用ILMerge将所有程序集合并到一个可执行文件中。但是您仍然需要安装框架运行时。要将您的可执行文件转换为本机可执行文件,您可以查看这个问题

于 2010-01-21T16:09:21.457 回答
1

不 - 您不能在自己的应用程序中静态包含 .net 运行时

于 2010-01-21T16:09:01.807 回答
1

是的,.NET 应用程序可以是单个 .exe 文件。您可以只编写一个在 .NET 框架之外没有依赖关系的程序集,也可以使用ILMerge将多个程序集组合为一个。不过,用户仍然需要安装适当版本的 .NET 框架;没有办法解决这个问题。

于 2010-01-21T16:09:41.653 回答
0

我不确定,但听起来您希望将 .NET 框架(或您的应用程序所需的部分)包含在安装程序中,以便它 100% 独立,是吗?我知道如果尚未安装 ClickOnce 应用程序,它可以下载 .NET,但如果您要部署到网络连接受限或没有网络连接的计算机,这将无济于事。据我了解,您可以使用您的应用重新分发框架:

http://msdn.microsoft.com/en-us/library/xak0tsbd.aspx,但我自己从未做过。

编辑:您的应用程序的可执行文件实际上不需要使用安装程序安装(如果您只需双击它就会运行),但如果您包含其他文件(例如 .NET 的可再发行文件),那么您可能会需要某种安装程序。

于 2010-01-21T16:09:40.450 回答
0

可以使用称为应用程序虚拟化的概念将 .net 应用程序打包到单个可执行文件中。这不是世界上最实际的事情,但它是可能的。

我写了一些关于它的更多细节来回应这篇文章

于 2013-08-02T14:48:54.747 回答