11

.NETアセンブリをネイティブコード(つまり、x86用)出力にコンパイルする方法はありますか?つまり、MSILを使用しません。

アーキテクチャとしてx86を指定した場合、これはJITを指すようにPEヘッダーを変更するだけですが、それでもアセンブリにはMSILが含まれ、必要に応じてJITTされます。

NGenは、指定されたアーキテクチャのアセンブリファイルを生成しますが、コンパイラではありません。パフォーマンスを向上させるように設計されていますが、元のDLLが必要です。ネイティブイメージの存在は、JITによるアセンブリのコンパイルを回避するためにのみ機能しますが、取得することはできません。そのネイティブイメージとそれを使用できますか?

では、実際に.NETからネイティブマシンコードにコンパイルする方法はありますか?

4

2 に答える 2

10

Spoon Studio(以前はXenocodeと呼ばれていました)はそれを実行できるようです:http ://spoon.net/Studio/Features.aspx

RemoteSoftにも製品がありますが、Webサイトはかなり古く見えます:http://www.remotesoft.com/linker/

于 2011-06-01T08:50:12.210 に答える
3

これは、.NETNativeと呼ばれる新しいプリコンパイルテクノロジを使用して実行できます。ここでそれをチェックしてください:http://msdn.microsoft.com/en-US/vstudio/dotnetnative

現在、Windowsストアアプリでのみ利用できます。単一コンポーネントのリンクを実行します。そのため、.NETFrameworkライブラリはアプリに静的にリンクされています。すべてがネイティブにコンパイルされ、ILアセンブリはデプロイされなくなります。

于 2014-04-21T01:12:16.367 に答える