【问题标题】:Python WMI Network Adapter Configuration parameter issue [Windows 8.1] [Python 2.7] [WMI 1.4.9]Python WMI 网络适配器配置参数问题 [Windows 8.1] [Python 2.7] [WMI 1.4.9]
【发布时间】:2016-09-29 17:27:11
【问题描述】:

当我尝试这样做时

SetDynamicDNSRegistration(True)

它返回我在MSDN WMI page 上查找的“68”,它的意思是“输入参数无效”。

完整脚本

import wmi

nic_configs = wmi.WMI('').Win32_NetworkAdapterConfiguration(IPEnabled=True)

# First network adaptor
nic = nic_configs[0]

# IP address, subnetmask and gateway values should be unicode objects
ip = u'192.168.0.151'
subnetmask = u'255.255.255.0'
gateway = u'192.168.0.1'
dns = u'192.168.0.1'

# Set IP address, subnetmask and default gateway
# Note: EnableStatic() and SetGateways() methods require *lists* of values to be passed
a = nic.EnableStatic(IPAddress=[ip],SubnetMask=[subnetmask])
b = nic.SetGateways(DefaultIPGateway=[gateway])
c = nic.SetDNSServerSearchOrder([dns])
d = nic.SetDynamicDNSRegistration(True)

print(a)
print(b)
print(c)
print(d)

怎么了?我确定“True”是布尔 TRUE 的正确 Python 语法……我什至不知道了……

【问题讨论】:

  • 如果你尝试nic.SetDynamicDNSRegistration(FullDNSRegistrationEnabled=1)会发生什么?
  • 完美,但我几乎无法将评论标记为已接受的答案...您介意将其写成答案以便我接受吗?

标签: python wmi


【解决方案1】:

使用其对应的布尔整数而不是 Python 布尔值。所以不是

nic.SetDynamicDNSRegistration(True)

使用

nic.SetDynamicDNSRegistration(FullDNSRegistrationEnabled=1)

【讨论】:

    猜你喜欢
    • 2017-02-06
    • 2014-01-17
    • 2013-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-08
    相关资源
    最近更新 更多