How to remote invoke another process method from C# application

Solution 1:

Welcome to the world of Inter-process communication. There are many methods to do this, like named pipes, RPC, shared memory, etc.

In a nutshell, your program is running inside a process. The other program is running inside another process. It's like your father trying to asking something from the boy next-door. These processes can communicate with each other and invoke each other's methods, or use each other's data. But not arbitrarily or course. They need some common standard for communication.

Take a look at these questions:

What is the simplest method of inter-process communication between 2 C# processes?

What is the best choice for .NET inter-process communication?

What is the easiest way to do inter process communication in C#?

Solution 2:

If you have no control over the code within the target process, then it sounds like you need to use a means of DLL-injection to inject your code into it.

If the calling process does not need an acknowledgement or response; then injecting code that performs method invocation code may surface, but if a response is required then it is likely that you will need to implement some form of inter-process communication within the code being injected.