so i know RPC is based on extending the notion of conventional, or local procedure calling, so that the called procedure need not exist in the same address space as the calling procedure. The two processes may be on the same system, or they may be on different systems with a network connecting them.

so here's what i want to do:
i'll have 3 programs in total: a UI for the user (the client), a service, and the other program i want to control
all the client does is basically connect to the service
the service listens for the connection and will then connect to the other program
the client should then to able to access this program (the program i'm trying to control should appear on the user's/client's screen)
i can't edit any code in the other program...

basically the whole point of this is i should be able to access the other program from any where by just using the client
so the client could be on any computer anywhere and be able to control this program (but not the whole program just a part of)

i want to use c++ and the service is a windows service so is RPC a good way to achieve this?