【问题标题】:Interprocess communication on windowswindows上的进程间通信
【发布时间】:2010-11-03 18:48:09
【问题描述】:

我有一个在 Windows 上运行的 TCL 脚本。我需要与在不同进程中运行的旧 vc++ 6 应用程序通信。我需要有2路沟通。在 Linux 中我会使用 dbus,但我应该为 windows 使用什么 IPC 策略?

【问题讨论】:

    标签: c++ windows ipc tcl


    【解决方案1】:

    Boost.interprocess 有多种方式,例如 C++ 的共享内存和消息传递。您总是可以从那里开始,看看哪些与您的脚本兼容。

    【讨论】:

      【解决方案2】:

      named pipes ?怎么样

      【讨论】:

        【解决方案3】:

        Windows 上的 Tcl 具有内置的 dde ​​支持(请参阅 dde ​​命令的文档),如果其他应用程序支持它,这可能会有所帮助。另一种选择是 TWAPI (Tcl Windows API) 扩展,它具有将键盘和鼠标输入发送到另一个应用程序的功能,请参阅http://twapi.magicsplat.com/input.html

        【讨论】:

        • 完美。正是我想要的。
        【解决方案4】:

        普通的旧套接字在 Windows(和 Linux,以及所有实现 TCP/IP 的地方)的 TCL 中工作得很好:)

        【讨论】:

          【解决方案5】:

          来自 MSDN 的选项列表:http://msdn.microsoft.com/en-us/library/aa365574(VS.85).aspx

          如果你想要更“进取”的东西,还有Windows Message Queue

          【讨论】:

            【解决方案6】:

            从 Tcl 的角度来看,如果您的 VC6 应用程序允许,最简单的方法是让 TCL 启动 VC 应用程序,然后使用标准输入和标准输出进行通信。如果这不可能,Tcl socket 命令允许您与另一个进程建立 TCP 套接字连接。

            有关第一个的详细信息,请参阅here,有关套接字的一些信息,请参阅here

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2012-10-20
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2013-01-11
              • 2010-09-08
              • 2011-08-28
              相关资源
              最近更新 更多