RDPSession ConnectToClient 意外终止

2023-11-29

我已经成功创建了一个桌面共享解决方案,其中 RDPViewer 连接到 RDPSession。这一切都很顺利。然而,现在我正在尝试相反的方法:使用 RDPViewer 的 StartReverseConnectListener 方法和 RDPSession 的 ConnectToClient 方法(其中会话端将连接到查看器端以解决 NAT/防火墙问题)。我已按照以下概述的步骤进行操作http://msdn.microsoft.com/en-us/library/windows/desktop/aa373359%28v=vs.85%29.aspx,主要是:

  1. 查看器通过调用获取其连接字符串 StartReverseConnectListener 方法,为 bstrConnectionString、bstrUserName 和 bstrPassword 参数。

  2. 查看器通过调用以下命令来启动反向连接侦听器 StartReverseConnectListener 方法,为 pbstrReverseConnectString 参数和有效值 bstrConnectionString、bstrUserName 和 bstrPassword 参数。

  3. 查看器将步骤1中获得的连接字符串发送到 分享者。

使用 C# 2010,我在 RDPSession 端完成了以下操作:

RDPSession session = new RDPSession();
session.Open();
session.Invitations.CreateInvitation(null, "test", "12345", 1);

然后,在 RDPViewer 方面,我完成了:

string reverseConnectString = axRDPViewer1.StartReverseConnectListener(null, null, null);

(上述步骤 1)

axRDPViewer1.StartReverseConnectListener(reverseConnectString, "test", "12345");

(上述步骤 2)

然后,回到 RDPSession 端,我尝试使用从查看器获得的reverseConnectString 进行连接(我实际上将该字符串保存到文件中,然后将其加载到 RDPSession 端):

session.ConnectToClient(reverseConnectString);

(上述步骤 3)

一旦我执行此方法,RDPViewer 端就会断开连接,并出现错误 1798,根据http://msdn.microsoft.com/en-us/library/aa373802%28VS.85%29.aspx, means:

服务器证书解包错误 1798

无法解压服务器证书。

我觉得我错过了一些明显的东西,但我不知道是什么。

有什么建议么?

Thanks!


微软文档中有关反向连接的内容都是错误的。这是您需要执行的操作(改编自上面的代码):

RDP 会话端:

RDPSession session = new RDPSession(); 
session.Open(); 
string hostConnString = session.Invitations.CreateInvitation(null, "My Group Name", "12345", 1);

RDPViewer 端(注意hostConnString应与会话端检索到的值相同):

string viewerConnString = axRDPViewer1.StartReverseConnectListener(hostConnString, "My Name", "12345");

现在回到 RDP 会话端(请注意,viewerConnString应与从查看器端检索到的值相同):

session.ConnectToClient(viewerConnString); 

那应该可以了。有几点需要注意。 CreateInvitation 中指定的组名称不需要与其他任何地方匹配。我认为这仅供参考,如果您的程序需要枚举主持人发起的邀请。传递给 StartReverseConnectListener 的用户名也可以是您想要的任何名称。这可以通过查看在主机端进行询问和使用RemoteName财产在IRDPSRAPIAttendee界面。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

RDPSession ConnectToClient 意外终止 的相关文章

  • 使用具有现有访问令牌的 Google API .NET 客户端

    用例如下 移动应用程序正在通过 Google 对用户进行身份验证 并且在某些时候 我们需要将用户的视频发布到他的 YouTube 帐户 出于实际原因 实际发布应该由后端完成 已经存储在那里的大文件 由于用户已经通过应用程序的身份验证 因此应
  • 为什么我不能用 `= delete;` 声明纯虚函数?

    Intro 纯虚函数使用通用语法声明 virtual f 0 然而 自 c 11 以来 有一种方法可以显式地传达non existence 特殊 成员函数的 Mystruct delete eg default constructor Q
  • 使用post方法将多个参数发送到asp.net core 3 mvc操作

    使用 http post 方法向 asp net mvc core 3 操作发送具有多个参数的 ajax 请求时存在问题 参数不绑定 在 dot net 框架 asp net web api 中存在类似的限制 但在 asp net mvc
  • C++:重写已弃用的虚拟方法时出现弃用警告

    我有一个纯虚拟类 它有一个纯虚拟方法 应该是const 但不幸的是不是 该接口位于库中 并且该类由单独项目中的其他几个类继承 我正在尝试使用这个方法const不会破坏兼容性 至少在一段时间内 但我找不到在非常量方法重载时产生警告的方法 以下
  • C# 中的接口继承

    我试图解决我在编写应用程序时遇到的相当大的 对我来说 问题 请看这个 为了简单起见 我将尝试缩短代码 我有一个名为的根接口IRepository
  • 对齐 GridView 中的行值

    我需要在 asp net 3 5 中右对齐 gridview 列中的值 我怎样才能做到这一点
  • 显示异常时的自定义错误消息:从客户端检测到潜在危险的 Request.Form 值

    我在我的 Web 应用程序中使用 ASP NET 的登录控件 当发生此异常时 我想在标签上显示一种有趣的错误类型System Web HttpRequestValidationException A potentially dangerou
  • 如何使用recv()检测客户端是否仍然连接(并且没有挂起)?

    我写了一个多客户端服务器程序C on SuSE Linux 企业服务器 12 3 x86 64 我为每个客户端使用一个线程来接收数据 我的问题是 我使用一个终端来运行服务器 并使用其他几个终端来运行服务器telnet到我的服务器 作为客户端
  • 如何从 C# 控制器重定向到外部 url

    我使用 C 控制器作为网络服务 在其中我想将用户重定向到外部网址 我该怎么做 Tried System Web HttpContext Current Response Redirect 但没有成功 使用控制器的重定向 http msdn
  • 当前的 c++ 工作草案与当前标准有何不同

    通过搜索该标准的 PDF 版本 我最终找到了这个链接C 标准措辞草案 http www open std org jtc1 sc22 wg21 docs papers 2012 n3376 pdf从 2011 年开始 我意识到我可以购买最终
  • C 语言中 =+(等于加)是什么意思?

    我碰到 与标准相反 今天在一些 C 代码中 我不太确定这里发生了什么 我在文档中也找不到它 In ancientC 版本 相当于 它的残余物与最早的恐龙骨头一起被发现 例如 B 引入了广义赋值运算符 使用x y to add y to x
  • Azure 事件中心 - 按顺序接收事件

    我使用下面的代码从 Azure Event Hub 接收事件 https learn microsoft com en us azure event hubs event hubs dotnet framework getstarted s
  • 如何挤出平面 2D 网格并赋予其深度

    我有一组共面 连接的三角形 即二维网格 现在我需要将其在 z 轴上挤出几个单位 网格由一组顶点定义 渲染器通过与三角形数组匹配来理解这些顶点 网格示例 顶点 0 0 0 10 0 0 10 10 0 0 10 0 所以这里我们有一个二维正方
  • 获取 2 个数据集 c# 中的差异

    我正在编写一个简短的算法 它必须比较两个数据集 以便可以进一步处理两者之间的差异 我尝试通过合并这两个数据集并将结果更改放入新的数据集来实现此目标 我的方法如下所示 private DataSet ComputateDiff DataSet
  • 如何一步步遍历目录树?

    我发现了很多关于遍历目录树的示例 但我需要一些不同的东西 我需要一个带有某种方法的类 每次调用都会从目录返回一个文件 并逐渐遍历目录树 请问我该怎么做 我正在使用函数 FindFirstFile FindNextFile 和 FindClo
  • 在类的所有方法之前运行一个方法

    在 C 3 或 4 中可以做到这一点吗 也许有一些反思 class Magic RunBeforeAll public void BaseMethod runs BaseMethod before being executed public
  • 是否可以有一个 out ParameterExpression?

    我想定义一个 Lambda 表达式out范围 有可能做到吗 下面是我尝试过的 C Net 4 0 控制台应用程序的代码片段 正如您在 procedure25 中看到的 我可以使用 lambda 表达式来定义具有输出参数的委托 但是 当我想使
  • 剪贴板在 .NET 3.5 和 4 中的行为有所不同,但为什么呢?

    我们最近将一个非常大的项目从 NET Framework 3 5 升级到 4 最初一切似乎都工作正常 但现在复制粘贴操作开始出现错误 我已经成功制作了一个小型的可复制应用程序 它显示了 NET 3 5 和 4 中的不同行为 我还找到了一种解
  • 什么是 __declspec 以及何时需要使用它?

    我见过这样的例子 declspec在我正在阅读的代码中 它是什么 我什么时候需要使用这个构造 这是 Microsoft 对 C 语言的特定扩展 它允许您使用存储类信息来赋予类型或函数属性 文档 declspec C https learn
  • 运算符“==”不能应用于“int”和“string”类型的操作数

    我正在编写一个程序 我想到了一个数字 然后计算机猜测了它 我一边尝试一边测试它 但我不断收到不应该出现的错误 错误是主题标题 我使用 Int Parse 来转换我的字符串 但我不知道为什么会收到错误 我知道它说 不能与整数一起使用 但我在网

随机推荐

  • 为什么 Activity 类中的 BroadCastReceiver 没有收到 LocalBroadCastManager 从 IntentService 发送的意图?

    选择语言片段 java Intent explicitGetNumberServiceIntentUSA new Intent getActivity GetNumberService class explicitGetNumberServ
  • 无法在 OS X 终端中使用 GCC

    我已经安装了开发者工具 我可以通过 Xcode 编译代码 根据文档 usr bin gcc usr bin cc 应该指向 usr bin gcc 4 0 我的系统 Snow Leopard 上不存在符号链接或 gcc 4 0 我只想在终端
  • 一系列 IP 的 Soundcloud 403 错误

    我们有几台服务器 配置完全相同 CentOS 6 Plesk 在我们使用从 51 开始到 149 的 IP 范围的所有服务器上 当我们在连接到这些服务器之一的终端中测试此命令时 curl v https api soundcloud com
  • 在 Oracle PL/SQL 中声明动态数组

    有没有一种简单的方法可以在 Oracle PL SQL 中声明动态数组 我需要使用一个可以包含 100 000 个数字的数组 而有时我只需要存储 3 个数字 PL SQL 中有三种类型的集合 只有varrays具有固定的最大元素数 如果您使
  • 模板参数中参数 1 处的 C++ 类型/值不匹配

    好的 我有下面的代码 当我执行它时 出现以下错误 type value mismatch at argument 1 in template parameter list for template
  • 安装软件遇到问题... - android

    每次启动 sdk 时我都会在控制台中遇到此问题 Framework Resource Parser Collect preferences failed class java lang AutoCloseable not found in
  • 关闭 UIImagePickerController 时注意到 Redbar

    我正在使用 UIImagePickerController 来录制 编辑视频并将其保存到文件 关闭 UIImagePickerController 时 状态栏会闪烁红色并消失 我想避免这种情况 我已经注意到从 iOS8 1 iOS8 iOS
  • Inception 模型有两个 softmax 输出吗?

    Inception v3 模型如下图所示 该图片来自这篇博文 https research googleblog com 2016 03 train your own image classifier with html 看起来有两个Sof
  • Lua中对表进行降序排序

    我无法让它工作 tbl 1 etc2 14477 2 etc1 1337 3 etc3 1336 4 etc4 1335 for i 1 tbl do table sort tbl function a b return a i gt b
  • 服务器端 PHP session_start() 错误

    我目前正在尝试将我的网站从我的计算机上的本地主机移动到我的网络服务器 还有一个问题 除了管理登录表单之外 一切正常 起初我以为这不是 save as utf 8 without BOM 问题 但错误日志显示了一些我以前从未遇到过的奇怪问题
  • 无法打开流:HTTP 包装器不支持可写连接

    我已将本地主机文件上传到我的网站 但它向我显示此错误 2 file put contents WebsiteURL cache lang FileName php function file put contents failed to o
  • PHP合并数组

    我一直在尝试 未成功 将多个数组的输出合并到一个数组中 我尝试过的一个例子是 data1 array cat goat data2 array dog cow print r array merge data1 data2 这工作得很好 但
  • 如何将 Unicode 字符作为 JSP/Servlet request.getParameter 传递?

    经过多次尝试和错误 我仍然无法找出问题所在 JSP Servlet 和数据库都设置为接受 UTF 8 编码 但即使如此 每当我对任何具有两字节字符 如破折号 的内容使用 request getParameter 时 它们都会被打乱为损坏的字
  • 有关内存映射接口的进一步问题

    我处理内存映射设备的 C 代码仍然存在一些问题 目前 我将写入的寄存器的地址空间声明为易失性 指针 我向它们写入数据 如下所示 volatile unsigned int wr register int 0x40000000 volatil
  • 如何在 iOS 上调用 Rootviewcontroller

    在我的 iOS 应用程序启动中检查用户是注册用户还是新用户 如 facebook 和 Skype 如果用户未注册 我正在导航应用程序以向我的应用程序委托注册屏幕 if user register RegisterViewController
  • Jquery Ajax POST 中出现 400 bad request 错误

    我正在尝试使用 Jquery 发送 Ajax POST 请求 但遇到 400 bad request 错误 这是我的代码 ajax type POST url http localhost 8080 project server rest
  • 在Lua中生成均匀随机数

    我正在用 Lua 编写马尔可夫链 其中一个要素要求我统一生成随机数 这是一个简化的例子来说明我的问题 example function x local r math random 1 10 print r return x r end ex
  • Servlet - 关闭连接但不关闭方法

    我必须实现将发送的服务 servlet 2 5 或 3 204在每个连接上编写代码但不关闭线程 我需要对收到的数据做一些事情 比如打开新连接 可以关闭连接但不能结束方法吗 或者在连接关闭时启动另一个方法 规范中尚不清楚 但它似乎可以在 To
  • 如何在服务器端获取客户端屏幕分辨率宽度/高度

    我可以使用客户端脚本 javascript 获取客户端屏幕分辨率 但我不想那样做 我也尝试过Request Browser ScreenPixelsWidth 但它总是返回固定宽度680 任何想法 客户端屏幕分辨率等信息是never在 HT
  • RDPSession ConnectToClient 意外终止

    我已经成功创建了一个桌面共享解决方案 其中 RDPViewer 连接到 RDPSession 这一切都很顺利 然而 现在我正在尝试相反的方法 使用 RDPViewer 的 StartReverseConnectListener 方法和 RD