Можно ли установить IP-адрес (или что-либо еще) для сетевого интерфейса, который в данный момент отключен?
Я использую WMI, что означает ManagementObjectCollection
и Invoke
методы.Но, похоже, нет способа настроить IP в c # на сетевом адаптере, который в данный момент не работает - кабель не подключен?
Нет сообщения об ошибке.Например, я устанавливаю IP вручную для интерфейса Wi-Fi, и с помощью WMI я хочу установить его на DHCP.
ManagementObjectSearcher query = new ManagementObjectSearcher("Select * from Win32_NetworkAdapterConfiguration where SettingID=\"" + selectedProfile.AdapterGUID + "\"");
ManagementObjectCollection moc = query.Get();
foreach (ManagementObject mo in moc)
{
ManagementBaseObject newDHCPIP = mo.GetMethodParameters("EnableDHCP");
mo.InvokeMethod("EnableDHCP", newDHCPIP, null);
ManagementBaseObject newDHCPDNS = mo.GetMethodParameters("SetDNSServerSearchOrder");
newDHCPDNS["DNSServerSearchOrder"] = null;
mo.InvokeMethod("SetDNSServerSearchOrder", newDHCPDNS, null);
ManagementBaseObject newDHCPRenew = mo.GetMethodParameters("RenewDHCPLease");
mo.InvokeMethod("RenewDHCPLease", newDHCPRenew, null);
mo.Dispose();
}
Я на 100% уверен, что выбрал правильный сетевой адаптер.Но когда я установил его и посмотрел на конфигурацию (по сети Windows и центру обмена, свойства адаптера), статический IP-адрес все еще остается.
Он работает только после подключения к сети Wi-Fi, затем я смотрю на конфигурациюа есть DHCP