Inter-process communication on windows

I have a TCL script running on windows. I need to contact an old vC ++ 6 application running in a different process. I need to have two way communication. On Linux, I would use dbus, but what IPC strategy should I use for Windows?

+4
source share
6 answers

Tcl on windows supports the dde built-in (see docs for the dde command), which can help if another application supports this. Another option is the TWAPI extension (Tcl Windows API), which has the ability to send keyboard and mouse input to another application, see http://twapi.magicsplat.com/input.html .

+2
source

Boost.interprocess has various ways, such as shared memory and messaging for C ++. You can always get started and see what is compatible with your script.

+4
source

What about named pipes?

+4
source

Normal old sockets work fine in TCL on Windows (and Linux, and TCP / IP is implemented everywhere :)

+2
source

Parameter list from MSDN: http://msdn.microsoft.com/en-us/library/aa365574(VS.85).aspx

If you want something more "adventurous", there is also a "Windows Message Queuing".

+1
source

From the point of view of Tcl, the easiest way if your VC6 application allows this would be to force TCL to start the VC application and then use stdin and stdout to communicate. If this is not possible, the Tcl socket command allows you to establish a TCP socket connection to another process.

See here for more information on the former and here for some information on sockets.

0
source

Source: https://habr.com/ru/post/1286376/


All Articles