我正在研究一個需要將PC IP地址重置爲特定IP和子網掩碼的工作工具。機器IP復位什麼也不做
我使用下面的代碼來嘗試更改IP(取自此頁:How can you change Network settings (IP Address, DNS, WINS, Host Name) with code in C#)。
問題是,這段代碼什麼也沒做。我的電腦本地連接的IP地址不變 - 它仍然通過DHCP自動設置。
幫助?
public void SetIP(string ip_address, string subnet_mask)
{
ManagementClass objMC = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection objMOC = objMC.GetInstances();
foreach (ManagementObject objMO in objMOC)
{
if ((bool)objMO["IPEnabled"])
{
try
{
ManagementBaseObject setIP;
ManagementBaseObject newIP =
objMO.GetMethodParameters("EnableStatic");
newIP["IPAddress"] = new string[] { ip_address };
newIP["SubnetMask"] = new string[] { subnet_mask };
setIP = objMO.InvokeMethod("EnableStatic", newIP, null);
}
catch (Exception)
{
throw;
}
}
}
}
1)作爲setIP結果返回什麼? 2)你有沒有嘗試在管理員權限下運行它? –
如何將setIP變成可讀結果? – steelfeathers
好吧,以管理員身份運行使其工作,但我需要能夠重置IP即使不作爲管理員運行。有任何想法嗎? – steelfeathers