Я ищу простой способ получить дату и время сервера esx в C#. Это должно быть время аппаратного обеспечения, поэтому я думаю, что это время BIOS. Когда VM перезагружается, он обычно получает время BIOS. Это то время, которое я хочу как объект datetime.Получить Datetime сервера ESX в C#
Я думаю, что я должен использовать что-то вроде этого:
private DateTime getTimeESX(Machine machine)
{
DateTime time = new DateTime();
Runspace runSpace = RunspaceFactory.CreateRunspace();
runSpace.Open();
Pipeline pipeline = runSpace.CreatePipeline();
Command getEsxCli = new Command("Get-EsxCli");
getEsxCli.Parameters.Add("Server", machine.IP);
Command getSysTime = new Command("system time get");
pipeline.Commands.Add(getEsxCli);
pipeline.Commands.Add(getSysTime);
Collection<PSObject> output = pipeline.Invoke();
foreach (PSObject psObject in output)
{
time = (DateTime)psObject.BaseObject;
}
return time;
}
ли кто-то идея, как я мог бы легко проверить это? У меня нет ESX, работающего в моей сети.
Просьба уточнить. Вы обращаетесь через сеть к серверу ESX? Или вы хотите аппаратное время ОС хоста от кода, запущенного на виртуальной машине? Или что-то другое? Если вам просто нужно машинное время кода, в котором вы работаете, ESX не имеет к этому никакого отношения. Просьба также предоставить любые образцы кода, которые вы пытались не работать, или что вы можете ожидать от работы, даже если он не существует в SDK. Это поможет прояснить ваш вопрос. –
Идея состоит в том, чтобы отслеживать и регистрировать временные метки всех важнейших устройств в сети, таких как рабочие станции, сервер ntp, esx и другие. Я хорошо осведомлен о том, что я могу обойти каждую виртуальную машину отдельно, чтобы получить метку времени. Но мне нужна метка времени аппаратной машины esx. До сих пор у меня есть только базовый метод: –
с использованием VMware.Vim; private DateTime getTimeESX (строка ip, строка пользователя, строка pass) { DateTime time = new DateTime(); VimClient c = новый VimClient(); ServiceContent sc = c.Connect (ip); UserSession us = c.Login (пользователь, пароль); время возврата; } С помощью этого кода я должен иметь возможность подключения к ESX, но я не знаю, какие команды использовать для получения метки времени .. ТНХ, Kenny –