C # подключиться к удаленному серверу с помощью Microsoft Terminal Services Active Client (RDP) - PullRequest
0 голосов
/ 09 сентября 2018

У меня есть кусок кода, который должен подключиться к серверу. Код выглядит следующим образом:

var rdp = new MsRdpClient8NotSafeForScripting();
rdp.Server = "192.168.0.101"; //adress
rdp.Domain = "localdomain"; //domain
rdp.UserName = "test"; //login
rdp.AdvancedSettings8.ClearTextPassword = "123456";//password
try
{
    rdp.Connect();
}
catch (Exception e)
{
    Console.WriteLine(e);
}
Console.WriteLine(rdp.Connected);
if (rdp.Connected != 0)
{
    rdp.Disconnect();
}
Console.ReadLine();

Предполагается, что он "подключится" к моему удаленному серверу через порт 3389, чтобы я мог читать файл с моего рабочего стола, который называется: "min.txt"

До сих пор я пытался указать данные для входа в систему на моем сервере, но я всегда просто получаю вывод «0» в окне консоли, независимо от того, указываю ли я правильные или неправильные данные для входа.

Мои вопросы здесь:

  • Почему он соединяется даже с неверными данными для входа (ip, user + пароль)
  • Как я могу, после того как я действительно успешно подключился к серверу, получить доступ к файлу min.txt на моем удаленном сервере, который находится на рабочем столе ...

Может ли кто-нибудь мне помочь?

1 Ответ

0 голосов
/ 09 сентября 2018

Возможно, вы можете попытаться указать пароль, как показано ниже:

MSTSClib.IMsTscNonScriptable secured = (MSTSClib.IMsTscNonScriptable)rdp.GetOcx();
secured.ClearTextPassword = “123456”;

Для справки: ссылка MSDN здесь

После подключения вы можете получить доступ к файлу, как к общему сетевому файлу, через UNC.

Пример:

System.IO.FileStream stream = System.IO.File.OpenRead("\\servername\sharedname\path\somefile.txt");

Затем необходимо убедиться, что имеются разрешения для доступа к папке.

...