2

我正在尝试使用 mstscax.dll(Microsoft 远程桌面控制)登录到需要网络级身份验证的 Vista 机器。

我已经使用了 IMsRdpClientNonScriptable4、IMsRdpClientAdvancedSettings4 和 IMsRdpClient6 中的所有方法。有许多功能似乎可以实现这一点。

  • EnableCredSspSupport
  • 凭据提示
  • PromptForCredsOnClient
  • 协商安全层

不幸的是,MSDN 文档实际上毫无用处,我在网上找不到任何这些示例。我知道这是可能的,因为一个名为“Royal TS”的产品可以通过这种方式连接。

一个提示是“Royal TS”和 Vista 的远程桌面都创建了一个类似于 CredUIPromptForWindowsCredentials 的授权提示,这让我相信我可以使用这样的函数来获取凭证,然后可能使用 PublisherCertificateChain 来告诉 RDP。

任何想法都会有所帮助。

4

3 回答 3

3

所以如果其他人发现这个:

需要做的就是 EnableCredSspSupport=true,我遇到的问题是我手动加载 mstscax.dll,而我使用的版本支持 IMsRdpClientNonScriptable4 接口,但根本不起作用。如果您只是正常加载控件,只需设置 EnableCredSspSupport=true 即可。

于 2009-06-04T22:39:30.273 回答
1

这个属性可能会帮助你

RDPControl.AdvancedSettings8.EnableCredSspSupport = true;

此外,它还取决于您的操作系统是否支持网络级别身份验证。

参考(http://technet.microsoft.com/en-us/library/ff393716(v=ws.10).aspx

于 2013-04-06T02:23:43.810 回答
0

我从来没有尝试过你正在做的事情,但我建议你看看下面的文章:

多远程桌面客户端.NET

这些项目使用 mstscax.dll。

于 2009-06-04T05:09:06.907 回答