Ostatnio bawię się pobieraniem i zmienieniem ustawień kart sieciowych za pomocą WMI. O ile zmiana IP, Maski, etc. była prosta, o tyle włączenie automatycznego pobierania IP z DHCP nie chce zadziałać. Przeglądałem różne fora oraz tutoriale i stworzyłem taką oto procedurkę:
private bool setDHCP(bool autoDNS, string ID)
{
ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
if (mo["Index"].Equals(ID))
{
try
{
ManagementBaseObject enableDHCP = mo.InvokeMethod("EnableDHCP", null, null);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
return false;
}
}
}
return true;
}
Procedura zwraca wartość true, ale nic nie zmienia się w ustawieniach karty. Próbowałem wywołać tą procedurę w różnych konfiguracjach, zarówno przy wcześniej nadanym IP, jak i wysyłając nule na odpowiednie pola. Ma ktoś może jakieś doświadczenia lub pomysły?