C++ c+的RDP协议+;

C++ c+的RDP协议+;,c++,tcp,connection,protocols,remote-desktop,C++,Tcp,Connection,Protocols,Remote Desktop,我正在寻找通过远程桌面连接到另一台计算机并检查连接是否成功的代码 我记录了数据包,发现有很多数据包,所以我想知道是否有一些简单的代码。RDP真的不容易,协议栈很大,建立在ITU OSI协议之上,其中包括相当数量的ASN.1/BER 你最好的选择是里面的代码。RDP真的不是一件容易的事,协议栈是巨大的,建立在ITU OSI协议之上,其中包括相当数量的ASN.1/BER 您的最佳选择是其中的代码。是否需要检查RDP服务器是否存在,但不需要进行身份验证?在这种情况下,您所需要的只是用于协商协议安全性的

我正在寻找通过远程桌面连接到另一台计算机并检查连接是否成功的代码


我记录了数据包,发现有很多数据包,所以我想知道是否有一些简单的代码。

RDP真的不容易,协议栈很大,建立在ITU OSI协议之上,其中包括相当数量的ASN.1/BER


你最好的选择是里面的代码。

RDP真的不是一件容易的事,协议栈是巨大的,建立在ITU OSI协议之上,其中包括相当数量的ASN.1/BER


您的最佳选择是其中的代码。

是否需要检查RDP服务器是否存在,但不需要进行身份验证?在这种情况下,您所需要的只是用于协商协议安全性的前两个数据包。您可以在libfreerdpcore/nego.c中的FreeRDP中找到代码。

是否需要检查RDP服务器是否存在,但不需要进行身份验证?在这种情况下,您所需要的只是用于协商协议安全性的前两个数据包。你可以在FiReDDP中找到代码,在LIFReReRDP核心/NEGO .C.< /P> < P> @ BLAKEL1231:你应该看一下,它在C中,但是可以很容易地修改,用于C++代码中,你所要做的就是有效地桥接其结构流。 此外,我多年前就在qt/c++中开发了一个rdp7+实现,最近为了好玩,我利用自己的经验编写了一个Rdp解析器和代码生成器,并在其上开源 现在它非常简单,我仍在努力使它更加智能化。警告一句,它不会产生一切。示例包括demo.def,它在编译时将生成ms rdp中使用的所有os ms fscc类
@如果您想,只需在O/P>< P> @ BLAKEL1231上执行实现,然后开始查看,它就在C中,但可以很容易地修改为C++代码中使用的,您所要做的就是有效地桥接其结构流。 此外,我多年前就在qt/c++中开发了一个rdp7+实现,最近为了好玩,我利用自己的经验编写了一个Rdp解析器和代码生成器,并在其上开源 现在它非常简单,我仍在努力使它更加智能化。警告一句,它不会产生一切。示例包括demo.def,它在编译时将生成ms rdp中使用的所有os ms fscc类
@Blanker1231如果你愿意的话,只要把实现交出来,开始用一些术语来解释:你想要一个“用于C++的RDP客户端库”

正如其他人所提到的,看看“FreeRDP”和“rdesktop”项目

使用FreeRDP,您将获得一套库(每个库都在做自己的事情)。使用桌面,你将得到一个客户端应用程序(你必须把C代码破解出来,然后在周围构建“C++”API)。

如果这是一个新项目,我会在桌面上选择FRIEDP,因为它们已经有了你已经可以使用的C++接口的库。

一个术语:你想要一个“C++的RDP客户端库”。 正如其他人所提到的,看看“FreeRDP”和“rdesktop”项目

使用FreeRDP,您将获得一套库(每个库都在做自己的事情)。使用桌面,你将得到一个客户端应用程序(你必须把C代码破解出来,然后在周围构建“C++”API)。

如果这是一个新项目,我会在桌面上选择FRIEDP,因为它们的库已经在你的C++接口中可用。

你的问题根本没有意义。RDP是一种协议,是两个节点之间通信的一组规则。消息控制的处理通常由类似于OSI模型第4级TCP的协议来处理。RDP是一种应用层协议,它不需要担心连接等问题。好吧,TCP之上有一个完整的大堆栈(至少有TPKT、X.225和ROSE),RDP并不直接位于TCP之上。如果您想使用RDP进行通信,您必须实现所有这些层(操作系统支持的层除外),您的问题根本没有意义。RDP是一种协议,是两个节点之间通信的一组规则。消息控制的处理通常由类似于OSI模型第4级TCP的协议来处理。RDP是一种应用层协议,它不需要担心连接等问题。好吧,TCP之上有一个完整的大堆栈(至少有TPKT、X.225和ROSE),RDP并不直接位于TCP之上。如果要使用RDP进行通信,必须实现所有这些层(操作系统支持的层除外)