Click to See Complete Forum and Search --> : About Inter-process communication between Application1(in C++)and Application2(in C#)


gsmurthy30
July 30th, 2008, 01:42 AM
My scenario is like this.
I have to develop an unmanaged DLL (in C++) which will run as part of Application1. "MyDLL" will export functions using __declSpec(dllexport) and make them available to Application1.

i have another Application2 which is in C#. Application2 uses .NET remoting to achieve inter-process communication. It offers APIs to invoke it, and interact with it for data transfer, etc.

From within "MyDLL", I need to call these C# APIs and invoke Application2 (which obviously runs as seperate process, I suppose), and do data transfer to and fro.

I think .NET remoting requires applications on both sides to be developed in C#. Whereas, "MyDLL" here is a C++ DLL.

I request someone to suggest how to achieve this.

Igor Vartanov
July 30th, 2008, 05:05 AM
Application2 uses .NET remoting to achieve inter-process communication.Please be a bit more specific about that. Let's use OS-level terms (like pipe, socket, etc.) but not C#.

gsmurthy30
July 30th, 2008, 07:41 AM
I'm afraid, i do not know much details. Application2 team simply says that it uses .NET Remoting for inter-process communication.

What i would like to know is: How could I go about in producing "MyDLL"?

Application2 team has released a set of dlls (rather assemblies in C# terminology).

I have to decide the architecure of MyDLL (i.e right from project settings, compiler options, to implementation details).

One of the exported functions (that Application1 team requires) has the following signature:

__declspec(dllexport)
int processData(int num_data, const wchar_t** equations);

How could I transfer such pointer information (of Application1) to Application2 APIs via my C++ DLL?