是否有任何方法可以将 .NET 开发的应用程序转换为本机可执行文件(包括源代码)?

安装整个框架(最高可达 .NET Framework 3.5 SP1)需要花费大量时间 - 计算机并不总是从互联网上更新。是否可以调用 NGen 来生成独立的可执行文件?

谢谢

没有正确的解决方案

其他提示

没有,NGen'd代码仍需框架 - 它只是预JIT们在自己的组件的代码。它还需要用于CLR本身的框架。

我相信具有他们正在使用的iPhone规划静态编译。我不知道这是否会在Windows上工作,以及虽然。

有曾经是一个称为Thinstall产品,其用于此一些人。它现在被称为的ThinApp - 基本上它的应用虚拟化。这是商业,但你很可能是能够获得试用版的保持。

我个人倒有点担心任何这样的产品 - 当它涉及到部署,从做事的主流方式于水火之中远离听起来像很多支持电话的配方。这里还有一个可怕的很多出问题。我不是说这是行不通的,只是我会警惕。

你有没有看了的 .NET 3.5(SP1)客户端配置文件?这可能有助于减少您的安装要求一点。

使用.NET 3.5 SP1也能够安装.NET Framework的较小子集。看看这张截图: “Visual 结果 <子>(来源: windowsclient.net

您可以使用NGEN,使您的应用程序的本地可执行文件,但它仍然是依赖于.NET框架。

NGen 将exes编译为本机exes,因此它们在运行时不需要进行JIT编译。但它们仍然依赖于框架。

有一些商业公司确实提供将 .net 程序集编译成独立 exe 的产品。 异种代码 和 vmware 的 薄应用. 。不过,两者都不便宜。

有些混淆器做到这一点,你就必须做到这一点,事前,但(你交付给用户之前)。一个例子是 remotesoft的蝾

您只需要安装,您的目标.NET例如版本.NET1.1 .NET2.0

修改:如果您需要为目标的3.5版本,您需要安装两个2.0和3.5

ILMerge (免费)可以在几个组件合并成一个,但我不认为它的工作原理与核心运行时。

总之我认为,如果你想运行.NET程序,你需要安装.NET Framework。

有是,声称,在这里做商业产品:

http://www.xenocode.com/Obfuscator/

“部署.NET应用程序安全地,无.NET框架安装”

不知道是什么缺点,这将是虽然

来自VMware的ThinApp(以前Thinstall)。使用是非常昂贵的,虽然。

http://www.vmware.com/products/thinapp/

我们目前要解决2007年问题的唯一产物是 Xenocode Postbuild 。从那时起,我们成功地使用本产品,我们还利用其相当不错的虚拟化功能。

唯一的问题是,我们购买了不支持Windows 7的版本(在这里您不需要安装.NET Framework来运行你的版本<4.0编译后的程序)。于是我写信给Xenocode。他们回答

  

为了获得Win 7的支持,你应该升级到Postbuild的最新版本(现在叫 .NET混淆)。赢7不为2007 Postbuild支持的平台。

为什么不Ngen.exe? http://msdn.microsoft.com/en-我们/库/ 6t9t5wcf(v = VS.80)的.aspx

它可以转换成.Net ProgramsNative Programs,你已经拥有了它,如果你有.Net框架

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top