tags:

views:

329

answers:

2

We are developing a Data Synapse calc node process in C# that requires functionality in a Win32 DLL. We have no problems building this.

The question is it has to run on a Windows 64 bit system, with Data Synapse 5.1 Grid APIs for Windows 64. While Windows 64 will run most processes transparently using WOW we don't know that Data Synapse's 64 bit will in some way stop this from working?

Anyone done this?

8 Jun 2009: Update. when we try to run a win32 service on the win64 grid we run into problems because on Win64 the grid code intrastructure runs as 64 bit Java. This java calls our service using a win64 JINI call to our service which is implemented as a DLL. Unfortunately as a Win32 DLL.

+1  A: 

Hi Lambert

Do you want your C# code to run as a .NET service? .NET Services run in-process and as far as I know, there is no way of mixing 32bit and 64bit code within a single process.

I see two solutions

1) Run 32bit DataSynapse engines OR 2) Run the C# code in a surrogate 32bit process. Use some form of IPC to communicate between some stub code running in the engine process and the surrogate process.

I believe this infrastructure has already been built by DataSynapse for C/C++ code and is called IsolateService. To use IsolateService a simple C->.NET bridge would need to be developed on the remote end or a .NET executable wrapper developed to host the .NET dll and handle COMs.

Nathan

A: 

Maybe you can install and run a win32 engine at the win64 machine, in that case everything is in WOW.