1

メモリ内で .NET アセンブリを実行するためにAssembly.Load()、次に使用しています。EntryPoint.Invoke(null, null)ホスト プロセスが x86 で、実行されたアセンブリが AnyCPU でない限り、これは機能します。この場合、実行されたアセンブリは x86 コンテキストで実行されるため、誤動作します。

ホスト プロセスが x86 であっても、AnyCPU コンテキストで Assemly オブジェクトを実行する方法はありますか?

4

1 に答える 1

1

AnyCPU コンテキストでアセンブリを実行しても意味がありません。AnyCPU を対象としたアセンブリは、64 ビット プロセスにロードされた場合は 64 ビットに、32 ビット プロセスの場合は 32 ビットに JIT されます。このアセンブリが 64 ビットのホスト プロセスに依存している場合、そのプラットフォーム ターゲットは Any CPU ではなく x64 である必要があります。

于 2012-02-10T20:10:52.590 に答える