【问题标题】:Does an RDP client library under Linux exist?Linux下是否存在RDP客户端库?
【发布时间】:2009-07-01 21:34:30
【问题描述】:

在 Linux 中是否有任何库可以作为客户端通过远程桌面协议 (RDP) 进行连接?使用的语言是次要的存在问题。任何主流语言都可以(例如 C++、Perl、Java、Ruby、PHP、Python),甚至像 OCaml 或 Scheme 这样不太流行的语言。

除了获取 rdesktop 源并从中破解库之外,还有其他选择吗?

【问题讨论】:

    标签: linux remote-desktop rdp


    【解决方案1】:

    FreeRDP 项目中有一组跨平台的开源 RDP 库可用。它们是用 C 语言和 Apache 许可证 2.0 编写的。见http://www.freerdp.com

    【讨论】:

      【解决方案2】:

      在我的 Mandriva 软件管理工具中输入 rdp 会显示 libxrdp,这是 xrdp 所依赖的库,但我不知道详细信息,因此它可能不是您想要的。

      项目网址是xrdp.sourceforge.net

      【讨论】:

      • xrdp 是一个 RDP 和 X 服务器。我怀疑 libxrdp 包含任何可直接用于 RDP 客户端的内容。我确信 xrdp 源代码对编写客户端库很有帮助,就像 rdesktop 源代码一样。
      • xrdp 确实包含一个 rdp 客户端模块。引用 xrdp 页面“Librdp,xrdp 的 RDP 模块。Librdp 提供到 RDP 服务器的连接。它目前仅支持 RDP4 连接。”此模块源自 rdesktop 源,但不如当前的 rdesktop 源更新。它完全没有文档,甚至没有使用它的示例程序。 xrpd 本身似乎没有使用它,因为它在删除 rdp 目录并在 Makefile 中注释掉 3 或 4 行后毫无怨言地编译。
      【解决方案3】:

      你可以看看这些实现:

      不可移植的实现:

      以及参考文件:

      【讨论】:

        【解决方案4】:

        rdesktop 将是您的最佳选择。代码很干净,我不认为制作一个库是什么大不了的事。

        如果您更喜欢 Java,另一个选择是 ProperJavaRDP 客户端 http://properjavardp.sourceforge.net/ 。这几乎是 rdesktop 的海峡港口。

        【讨论】:

          【解决方案5】:

          抱歉,快速 strace 和 nm 的 rdesktop 显示除了 X、加密和压缩库之外的任何内容。

          【讨论】:

          • 正确。因此,术语“黑客”。 rdesktop 源代码组织得足够健全(除了 X 可能与所有内容过于交织),因此您可以从应用程序的源代码创建一个库。但这比“apt-get install rdp-dev”要努力得多。
          【解决方案6】:

          rdesktop 确实允许嵌入到其他窗口中,它如何不符合您的目的?

          请参阅帮助中的-X 选项

          【讨论】:

          • 它不是一个便于与 RDP 服务器进行编程通信的库。
          【解决方案7】:

          您可以根据 J-16 SDIZ 的建议将 rdesktop 嵌入到您自己的窗口中,然后以编程方式将 X.org 事件发送到该窗口。类似的方法是在 Windows 机器上安装 VNC 服务器并在 Linux 机器上运行 VNC 客户端。这样,您还可以以编程方式将 X.org 事件发送到 VNC 客户端。

          这是 browsershots.org 用来通过 Python 以跨平台方式以编程方式控制各种 Web 浏览器的方法。如果browsershots.org client source code,请查看gui 目录

          【讨论】:

            【解决方案8】:

            我已经让 xrdp 在 EC2 上与 RHEL 一起工作:xrdp.org

            【讨论】:

              猜你喜欢
              • 2017-12-17
              • 2022-10-15
              • 1970-01-01
              • 2015-12-24
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2011-10-21
              • 2021-10-03
              相关资源
              最近更新 更多