如果您不知道 Phoenix,它是 Microsoft 的一个编译器框架,显然将成为其所有新编译器的基础。它可以读取 CIL、x86、x64 和 IA64 的代码;并以 x86、x64、IA64 或 CIL 发出代码。

我可以用它来将纯 .Net 应用程序转换为纯本机应用程序吗?我的意思是,它不必加载任何 .Net .dll(甚至不必加载 mscoree),并且具有相同的语义?当然,这不包括反射。

有帮助吗?

解决方案

如果对 Phoenix 不太了解,为了让 .NET 应用程序在本机运行,您还需要该框架的本机版本,除非您不使用该框架(这几乎是不可能的)。

此外,CLR 还包括垃圾收集、程序集加载等,因此转储 CLR 的解释部分可能不会对 .NET 应用程序的性能产生太大影响。

另外,来自凤凰 常问问题:

问。如何从本机映像重定向到 MSIL 映像(反之亦然)?

A。不太容易。这不是一个受支持的场景,虽然理论上可能是可行的,但我们不知道有谁真正做到过。

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