如何以编程方式启用/禁用网络接口?(Windows XP)

tzo*_*zot 12 python networking windows-xp

我需要从Windows XP中的脚本启用/禁用完全网络接口.我正在寻找一个python解决方案,但任何一般的方式(例如WMI,一些命令行àlanetsh,一些Windows调用)是受欢迎的,并将进行调整.谢谢.

Kri*_*ler 10

使用netsh接口用法设置接口[name =] IfName [[admin =] ENABLED | DISABLED [connect =] CONNECTED | DISCONNECTED [newname =] NewName]

尝试在外部括号内包含所有内容:netsh interface set interface name ="thename"admin = disabled connect = DISCONNECTED newname ="thename"

另请参阅此MS KB页面:http://support.microsoft.com/kb/262265/ 您可以按照他们的建议进行操作.要禁用适配器,您需要确定引用硬件设备的方法.如果计算机上没有多个具有相同名称的适配器,则可能会取消接口的描述(或PCI ID正常工作).之后,使用devcon(禁用|启用).Devcon是设备管理器的附加控制台界面.


tzo*_*zot 6

到目前为止,我已经找到了以下Python解决方案:

>>> import wmi; c=wmi.WMI()
>>> o=c.query("select * from Win32_NetworkAdapter where NetConnectionID='wifi'")[0]
>>> o.EnableDevice(1)
(-2147217407,)
Run Code Online (Sandbox Code Playgroud)

将AFAIU翻译为通用WMI错误0x80041001.可能是权限.