Interprocess communication
-
Current Scenario: I have a long running application that gets a job list from sql, creates a child process for each request and exchange status data with those child process with a full-duplex communication. All processes runs on the same machine as the host application, currently all processes are Win32 and I use WM_COPYDATA. Future: It is likely that in the next future the Win32 application will be rewritten to .NET, child processes will remain untouched, new child processes will be written in any language/platform (.NET, Win32) depending on 3rd party specifications/libraries. Question: I would like to hear some rant on how to implement interprocess communication between .NET and Win32 application. TIA
---( carlop )--- web @ www.carlop.com blog @ carlop-dev.blogspot.com
-
Current Scenario: I have a long running application that gets a job list from sql, creates a child process for each request and exchange status data with those child process with a full-duplex communication. All processes runs on the same machine as the host application, currently all processes are Win32 and I use WM_COPYDATA. Future: It is likely that in the next future the Win32 application will be rewritten to .NET, child processes will remain untouched, new child processes will be written in any language/platform (.NET, Win32) depending on 3rd party specifications/libraries. Question: I would like to hear some rant on how to implement interprocess communication between .NET and Win32 application. TIA
---( carlop )--- web @ www.carlop.com blog @ carlop-dev.blogspot.com
You could convert the WM_COPYDATA-solution to a C#-counterpart. Windows-messaging is fast, and you'd retain compatibility with the old version. Alternatively you could use a HttpServer, and use WebRequests; easier to debug than Windows-messages, and you can send/receive messages from beyond the local desktop.
I are troll :)