2012-01-09 8 views
0

32ビットプロセスに64ビットのdllをロードすることはできますか?
一般的に言えば、私はそれが起こり得ないことを知っています。
ただし、いくつかの例外がありますか?32ビットプロセスに64ビットのdllをロードすることはできますか?

+0

例外があるのはなぜですか?これらの例外は何になりますか?それを作るにはどんな条件がありますか?どのようなアーキテクチャで? –

答えて

2

いいえ、64ビットプロセスでは32ビットDLLをロードできません。

64ビットOSを使用している場合は、DLLを64ビットプロセスでロードし、IPCによって32ビットプロセスと通信させることができます。

32ビットOSを使用している場合、あなたは不運です。

0

しかし、今日買った新しいコンピュータは、少なくとも4G RAMを搭載しています。 64ビットOSを使用して問題を回避することはできません。私たちは64ビットに確実に直面しなければなりません! Server 2008 R2には64ビットしかありません。 EXEに関する問題AnyCPU/x86、32ビットCOM/C++ dllを処理する必要があります。 32ビットと64ビットの両方のCOM/C++ dllを理想的にコンパイルします。

0

.NETでは、64ビットDLLを32ビットプロセスにロードすることは可能です反射のみです。詳細は「Analyze 64-bit DLL from within T4 template in Visual Studio (32-bit) using Reflection」をご確認ください。

私はこれが特別なケースであることを知っていますが、私と同様の解決策を探している人を助けるかもしれないので、とにかく追加したいと思っていました。

関連する問題