Windowsでは32ビットプロセスが64ビットdllをロードできないため、32ビットプロセスが64ビットプロセスと対話できるようにするためにリモーティングを使用しようとしています。
問題は次のとおりです。2つのアプリケーションが同じマシン上にある場合、一方は32ビットでもう一方は64ビットであり、そのようにする必要があります。32ビットまたは64ビットの両方を作成すると、これらのアプリケーションが構築されているすべてのものが破損します。の。
.NETのSystem.Runtime.Remoting.RemotingConfiguration
クラスを使用してそのメソッドを呼び出し、リモート処理を介してアクセスするクラスを参照するファイルConfigure()
への参照を渡します。App.config
MarshalByRefObject
私はそれを動作させましたが、Client、Host、MarshalByRefObjectクラスが32ビットまたは64ビットのいずれかである場合に限ります。それらを混同すると、これは機能しません:私は最終的に:になりBadImageFormatException
ます
MyRemotingObject
ファイルまたはアセンブリ' 'またはその依存関係の1つを読み込めませんでした。間違った形式のプログラムを読み込もうとしました。
両方のアプリを32ビットまたは64ビットにするとすぐに例外はなくなりますが、ここでも、一方が32ビットでもう一方が64ビットである必要があります。
32ビット.NETアプリと.64ビット.NETアプリ間のプロセス間通信を有効にする方法を教えてもらえますか?