50

32 ビット DLL ライブラリ (LoadLibrary と同じ使用法) をロードする方法はありますか? GetProcAddress と共にその関数を使用したいと思います。

WOW を見ましたが、機能を提供していないようです。DependencyWalker などのツールは 64 ビットであっても 32 ビット dll のシンボルを読み取ることができるため、この機能は存在するはずです。

ありがとう

4

3 に答える 3

59

32 ビット DLL を 64 ビット プロセスにロードできるのは、DLL をデータ ファイルとしてロードする場合のみです。コードを実行できません。( http://support.microsoft.com/kb/282423 )

Microsoft では、プロセス間 COM を使用して、64 ビット アプリケーションで 32 ビット コードを使用することをお勧めします。その過程を解説した記事です。

于 2010-02-15T09:59:02.510 に答える
3

32ビットの実行可能ファイルを読み取ることと、32ビットの実行可能ファイル内でコードを実行することには違いがあります。私は、Windowsがそれを行うための機能を提供しているとは思いません。

それができる可能性が高い唯一の方法は、dllをロードする32ビットプロセスを作成し、プロセス間通信を実行して2つのプロセス間で結果を渡すことです。

于 2010-02-15T09:51:32.763 に答える