You can use Named Pipe. If it is C# 4.0 and above, you can also use Memory mapped file
How to exchange data between two process? [duplicate]
-
03-12-2021 - |
Question
Possible Duplicate:
IPC Mechanisms in C# - Usage and Best Practices
I have two diffenent process: A
and B
.
The process A
wants to send to the process B
some data (array of bytes, strings, structures, etc...). So suppose A
need to send the following buffer:
var buffer = new byte[100].
SendToAnotherProcess(B, buffer);
And B
need to receive this buffer:
byte[] buffer;
ReceiveFromAnotherProcess(A, out buffer);
What is the easiest solution to do this?
Solution
OTHER TIPS
There's a multitude of options. To name a few low-level IPC mechanisms:
- named pipes
- shared memory
- TCP/IP sockets
Also, there are some higher-level options:
- .NET Remoting
- WCF
One common way is to use files to communicate between the processed.
Each can write to a specific file that the other reads from.
You can use WCF, the registry, network interface, message queues or any other mechanism that lives outside the process.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow