您可以使用Python
WMI模块执行此操作(在运行这些脚本之前安装PyWin32扩展和WMI模块)。以下是配置与硬件设备对话的方法:
import wmi# Obtain network adaptors configurationsnic_configs = wmi.WMI().Win32_NetworkAdapterConfiguration(IPEnabled=True)# First network adaptornic = nic_configs[0]# IP address, subnetmask and gateway values should be unipre objectsip = u'192.168.0.11'subnetmask = u'255.255.255.0'gateway = u'192.168.0.1'# Set IP address, subnetmask and default gateway# Note: EnableStatic() and SetGateways() methods require *lists* of values to be passednic.EnableStatic(IPAddress=[ip],SubnetMask=[subnetmask])nic.SetGateways(DefaultIPGateway=[gateway])
以下是恢复为自动获取IP地址(通过DHCP)的方法:
import wmi# Obtain network adaptors configurationsnic_configs = wmi.WMI().Win32_NetworkAdapterConfiguration(IPEnabled=True)# First network adaptornic = nic_configs[0]# Enable DHCPnic.EnableDHCP()
注意:在生产脚本中,应检查EnableStatic(),SetGateways()和EnableDHCP()返回的值。(“ 0”表示成功,“
1”表示需要重新启动,其他值在通过方法名称链接到的MSDN页面上进行了描述。注意:对于EnableStatic()和SetGateways(),错误代码以列表形式返回)。
有关Win32NetworkAdapterConfiguration类的所有功能的完整信息,也可以在MSDN上找到。
注意:我已经使用Python 2.7进行了测试,但是由于PyWIn32和WMI模块可用于Python 3,所以我相信您应该能够通过删除字符串文字前的“
u”来使它适用于Python 3。



