【问题标题】:Uses to DDE and Alternatives?DDE 的用途和替代方案?
【发布时间】:2010-07-21 20:17:59
【问题描述】:

在我切换到 XP 的时候,我在 win98 的日子里尝试使用 DDE。我不能安静地让它工作,也不知道它可以或应该用于什么。

我想知道我可以使用哪些替代品?那时我想制作 3 个应用程序,无论它们以什么顺序打开,它们都可以与其他应用程序通信。我最终让他们都启动了一个单实例服务器应用程序,所有 3 人都使用该应用程序与服务器应用程序相互通信。 DDE 更适合这种情况吗?

无论如何,DDE 的替代品是什么?我阅读了Dynamic Data Exchange (DDE) - Still Relevant? 的答案,其中提到了 COM,但我不知道它们是什么或如何使用它们。它们也与我上面的情况有关吗?

DDE 的替代品有哪些?感觉就像TCP(或者命名管道)+Window Messages+Global memory可以解决任何IPC问题。

【问题讨论】:

    标签: ipc dynamic-data-exchange


    【解决方案1】:

    对于具有位置独立性的特定于 Windows 的进程间通信方案,您最好的选择是 Windows Communication Foundation (WCF)。这不仅仅是网络服务。

    例如,您可以在没有 IIS 的情况下托管 Web 服务。您可以在项目中使用 svc 文件来支持 AJAX 调用。

    如果您需要在 windows 环境下进行 IPC,请使用 WCF。

    【讨论】:

      【解决方案2】:

      出于多种原因,DDE 绝对是一种垂死的技术。也许其中一些原因让您在尝试使用它时感到困难。

      您没有指定您使用的是哪种语言,因此很难猜测哪种替代方案可能最适合您。但是,是的,命名管道、TCP/IP、全局内存等将是与语言无关的替代方案。

      如果您使用的是 .NET Framework,那么您的选择将包括 .NET Remoting 或更新的技术Windows Communication Foundation (WCF).

      【讨论】:

      • 我今天早些时候看过它,但我不知道它会有什么用处。这听起来像是通过 TCP 使用序列化数据在远程(或本地)机器上调用函数。我看不到它如何通知 1 个或多个应用程序发生了更改(窗口 msg,服务器( 客户端)如何使资源文件(或正在编辑的二进制数据板)可用于多个副本并尝试让它们保持同步等。它是否像一个可以调用函数的命名管道(或套接字)更好更容易使用?
      • 是的。我对 WCF 还不是很熟悉。但是,我确信它使用其他一些较低级别的协议来实际传输数据。是的,应该有一种方法可以将更新推送到监听客户端。
      猜你喜欢
      • 1970-01-01
      • 2010-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多