Forum » Programiranje » [C#] Spreminjanje IP naslova - DNS
[C#] Spreminjanje IP naslova - DNS
mirch ::
Zaradi potovanj, ter prihajanje nazaj na znane WIFI točke, sem si za lažje spreminjanje omislil program, kateri bi mi glede na vpisano lokacijo spremenil IP. Načeloma sem prišel tako daleč da program spremeni IP, Subnet in Gateway .. zapletlo se mi je pri DNS. Koda s kateri želim spremeniti DNS je naslednja:
NIC = ime mrežne karte
DNS = IP naslov za DNS
Prosim za pomoč, kaj delam narobe? Namreč noče mi spremenit DNS naslova na določeni mrežni karti
public void setDNS(string NIC, string DNS) { ManagementClass objMC = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObjectCollection objMOC = objMC.GetInstances(); foreach (ManagementObject objMO in objMOC) { if ((bool)objMO["IPEnabled"]) { // if you are using the System.Net.NetworkInformation.NetworkInterface you'll need to change this line to if (objMO["Caption"].ToString().Contains(NIC)) and pass in the Description property instead of the name if (objMO["Caption"].Equals(NIC)) { try { ManagementBaseObject newDNS = objMO.GetMethodParameters("SetDNSServerSearchOrder"); newDNS["DNSServerSearchOrder"] = DNS.Split(','); ManagementBaseObject setDNS = objMO.InvokeMethod("SetDNSServerSearchOrder", newDNS, null); } catch (Exception) { throw; } } }
NIC = ime mrežne karte
DNS = IP naslov za DNS
Prosim za pomoč, kaj delam narobe? Namreč noče mi spremenit DNS naslova na določeni mrežni karti
FrEaKmAn ::
predvidevam da si za referenco vzel http://stackoverflow.com/questions/2097...? Si probal tudi druge rešitve?
mirch ::
Da, vzeto iz omenjene strani. Nisem lih programer, tako da sem si moral malo pomagati :) Sem poskusil tudi ostale rešitve, vendar brez uspeha. Res je da na mojem računalniku uporabljam windows 8.1. Če to kaj spremeni pa ne bi vedel? Dodam starejše .NET platforme (3.5, 2.0,...)?
Klemenn ::
sam bi probal z debugom in videl al dejansko ne spremeni al vrze kaksen error
potem pa se pomislil na elevated permissions. mogoce je samo to.
potem pa se pomislil na elevated permissions. mogoce je samo to.
Jakka ::
Mogoče en namig. Nastaviš statično za dns 8.8.8.8 in 8.8.4.4 - Googlova dns strežnika. Pa dela povsod. :)
mirch ::
Jakka ... ni slaba ideja, ampak ko bi šlo le za enega uporabnika :)
Hvala tudi Klemenn, UAC sem probal direkt v Debug mapi kot administrator, vendar brez uspeha. Bom probal debuggat kolikor bom lahko in imam znanja :D
Hvala tudi Klemenn, UAC sem probal direkt v Debug mapi kot administrator, vendar brez uspeha. Bom probal debuggat kolikor bom lahko in imam znanja :D
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Speech recognitionOddelek: Programiranje | 3442 (1499) | simba89 |
» | [Java]Client/Server preko socketaOddelek: Programiranje | 1776 (1612) | KernelPanic |
» | [Java] Urejanje baze z JTableOddelek: Programiranje | 1015 (799) | vonNeumann |
» | VBS skripta za IP nastavitveOddelek: Programiranje | 3433 (2947) | Malajlo |
» | [Visual C#] TableAdapterOddelek: Programiranje | 1134 (1010) | detroit |