我有一个用C#编写的应用程序,需要能够在Windows中配置网络适配器.我有这个基本上通过WMI工作,但有一些我不喜欢的解决方案:有时设置似乎没有坚持,并且当没有插入网络电缆时,WMI返回错误方法,所以我不知道他们是否真的成功了.
我需要能够通过网络连接配置所有可用的设置 - 属性 - TCP/IP屏幕.
最好的方法是什么?
您可以使用Process
触发netsh命令来设置网络对话框中的所有属性.
例如:在适配器上设置静态ipaddress
netsh interface ip set address "Local Area Connection" static 192.168.0.10 255.255.255.0 192.168.0.1 1
要将它设置为dhcp,你可以使用它
netsh interface ip set address "Local Area Connection" dhcp
要从C#做到这一点
Process p = new Process(); ProcessStartInfo psi = new ProcessStartInfo("netsh", "interface ip set address \"Local Area Connection\" static 192.168.0.10 255.255.255.0 192.168.0.1 1"); p.StartInfo = psi; p.Start();
设置为静态可能需要几秒钟才能完成,因此如果需要,请确保等待进程退出.