2009-06-12 10 views
0

C#でData Synapse calcノードプロセスを開発しており、Win32 DLLの機能が必要です。これを構築するのに問題はありません。Windows 64マシンでData Synapse Win32 DLLグリッドノードを実行していますか?

Windows 64用のData Synapse 5.1 Grid APIを使用してWindows 64ビットシステムで実行する必要がありますか?Windows 64はWOWを使用してほとんどのプロセスを透過的に実行しますが、Data Synapseの64ビットは何らかの方法でこれが動作しないようにしますか?

誰でもこれを行いましたか?

2009年6月8日:更新。 Win64グリッド上でwin32サービスを実行しようとすると、Win64ではグリッドコードの基盤が64ビットJavaとして実行されるため、問題が発生します。このjavaはDLLとして実装されている私たちのサービスにwin64 JINI呼び出しを使用してサービスを呼び出します。残念ながら、Win32 DLLとして。

答えて

1

C#コードを.NETサービスとして実行しますか? .NET Servicesはプロセス内で実行され、私が知る限り、32ビットと64ビットのコードを1つのプロセスで混在させる方法はありません。

私は2つのソリューション

1)を実行する32ビットDataSynapseエンジンOR 2)サロゲート32ビットプロセスではC#コードを実行して参照。エンジンプロセスで実行されているスタブコードと代理プロセスの間で通信するには、IPCの形式を使用します。

このインフラストラクチャは、DataSynapse for C/C++コードで既に構築されており、IsolateServiceと呼ばれています。 IsolateServiceを使用するには、シンプルなC - > .NETブリッジをリモートエンドで開発するか、.NET dllをホストしてCOMを処理するために開発された.NET実行可能ラッパーを開発する必要があります。

ネイサン

0

たぶん、あなたはすべてがWOWであり、その場合には、Win64のマシンでのWin32エンジンをインストールして実行することができます。

0

win64マシンにwin32エンジンをインストールする場合は、インストールされているマネージャが32ビットJDK Javaを使用していることを確認してください(環境変数JAVA_HOMEを探してください)。

64ビットマシンで32ビットを実行するには、32ビットのJava JDKが必要で、DataSynapseマネージャが32ビットJavaマシンを指してインストールされている必要があります(マネージャをインストールすると、JAVA_HOME変数は32ビットバージョンを指しているはずです)。

関連する問題