RDPSession ConnectToClient неожиданно завершает работу
Я успешно создал решение для совместного использования рабочего стола, где RDPViewer подключается к сеансу RDPSession. Это все работает прекрасно. Теперь, однако, я пытаюсь получить противоположную работу: используя метод StartReverseConnectListener RDPViewer и метод ConnectToClient RDPSession (где сторона сеанса соединяется со стороной зрителя для решения проблем NAT / Firewall). Я следовал за шагами, изложенными вhttp://msdn.microsoft.com/en-us/library/windows/desktop/aa373359%28v=vs.85%29.aspx, в основном:
Зритель получает свою строку соединения, вызывая метод StartReverseConnectListener, передавая NULL для параметров bstrConnectionString, bstrUserName и bstrPassword.
Зритель инициирует прослушиватель обратного соединения, вызывая метод StartReverseConnectListener, передавая NULL для параметра pbstrReverseConnectString и допустимые значения для параметров bstrConnectionString, bstrUserName и bstrPassword.
Зритель отправляет строку подключения, полученную на шаге 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, означает:
СерверСертификатUnpackErr 1798
Не удалось распаковать сертификат сервера.
Я чувствую, что упускаю что-то очевидное, но не могу понять, что.
Какие-либо предложения?
Спасибо!