質問

32ビットプラットフォームサーバー用の64ビットプラットフォームのアセンブリに準拠するには、どのオプションを選択する必要がありますか。現在、私は32ビットサーバーに公開しようとしています。 Windows VistaマシンでVS2005を使用してプロジェクトをビルドし、サーバーで公開していますが、エラーが発生しています。どうすればこの問題を解決できますか。

64ビットマシンでAnyCPUオプションまたはMixed Platformオプションを使用する必要があります。また、x86のオプションが無効になっているため、その理由がわかりません。

役に立ちましたか?

解決

マネージ言語で作業していると仮定すると、「AnyCPU」へのコンパイルはクロスプラットフォーム(64/32ビット)である必要があります。生成されたILは、実行時にコードがJITされるまでマシン命令に変換されないためです。

ポインターのサイズなどに依存する特定の構造を使用する場合、ビット数の依存関係を取得できる例外はほとんどありませんが、これらは一般にコードには表示されませんが、実行しても害はありませんFxCopを使用してコードを確認します(これらの問題をカバーする移植性を扱うFxCopのセクションがあります)

他のヒント

AnyCPUを使用します。アセンブリに管理されていない直接の依存関係または特定のCPU用にマークされたアセンブリへの依存関係がない限り、アセンブリは64ビットまたは32ビットで正常に動作します

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top