Могу ли я выполнить команду net time из C# с именем пользователя и паролем? - PullRequest
0 голосов
/ 09 января 2020

Я сейчас пытаюсь определить время с удаленного сервера P C, используя команду времени из StartInfoProcess.

мне нужно узнать местное время с компьютера, на котором есть имя пользователя и пароль - как я могу это сделать?

я буду рад помощи!

теперь, когда что у меня в коде:


    IPAddress ip = Dns.GetHostEntry("OPC-LAB2").AddressList.First(o => o.AddressFamily == AddressFamily.InterNetwork);
    IPAddress ip1 = Dns.GetHostEntry("DFE-QA2").AddressList.First(o => o.AddressFamily == AddressFamily.InterNetwork);

    string machineName = string.Empty;

    try
    {
        machineName = Dns.GetHostEntry(ip1).HostName;

    }
    catch (Exception ex)
    {
        Console.WriteLine(ex);
        machineName = ".";
    }


    **var proc = new Process
    {
        StartInfo =
        {
            UseShellExecute = false,
            RedirectStandardOutput = true,
            FileName = "net",
            Arguments = @"time \\" + machineName
        }
    }; **
        proc.Start();
    proc.WaitForExit();
    List<string> results = new List<string>();
    while (!proc.StandardOutput.EndOfStream)
    {
        string currentline = proc.StandardOutput.ReadLine();
        if (!string.IsNullOrEmpty(currentline))
        {
            results.Add(currentline);
        }
    }

    string currentTime = string.Empty;
    if (results.Count > 0 && results[0].ToLower().StartsWith(@"current time at \\" + machineName.ToLower() + " is "))
    {
        currentTime = results[0].Substring((@"current time at \\" + machineName.ToLower() + " is ").Length);

        Console.WriteLine(DateTime.Parse(currentTime));
        Console.ReadLine();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...