如何在Python中正确修改Windows 11主机名?WMI调用报错排查
如何用Python正确修改Windows 11主机名?
我参考Stack Overflow旧帖子,尝试用Python的WMI模块修改Windows 11主机名。调用Win32_ComputerSystem的Rename方法后,返回元组(5,),查WMI错误常量文档没找到对应解释。
原代码如下:
context = wmi.WMI() for system in context.Win32_ComputerSystem(): print(system) q = system.Rename('ballcccc', None, None) print(q)
根据Win32_ComputerSystem类Rename方法的官方说明,USER和PASS参数允许传入NULL,但修改失败。调整代码后又遇到新报错:
Traceback (most recent call last): File "C:\Users\ballc\AppData\Local\Programs\Python\Python311\Lib\site-packages\wmi.py", line 1340, in connect obj = GetObject(moniker) ^^^^^^^^^^^^^^^^^^ File "C:\Users\ballc\AppData\Local\Programs\Python\Python311\Lib\site-packages\win32com\client\__init__.py", line 86, in GetObject return Moniker(Pathname, clsctx) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\ballc\AppData\Local\Programs\Python\Python311\Lib\site-packages\win32com\client\__init__.py", line 103, in Moniker moniker, i, bindCtx = pythoncom.MkParseDisplayName(Pathname) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ pywintypes.com_error: (-2147217394, 'OLE error 0x8004100e', None, None) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "D:\work\auto.py", line 49, in <module> o.changeName() File "D:\work\auto.py", line 41, in changeName context = wmi.WMI(namespace="Root\CIMV2") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\ballc\AppData\Local\Programs\Python\Python311\Lib\site-packages\wmi.py", line 1354, in connect handle_com_error() File "C:\Users\ballc\AppData\Local\Programs\Python\Python311\Lib\site-packages\wmi.py", line 258, in handle_com_error raise klass(com_error=err) wmi.x_wmi: <x_wmi: Unexpected COM Error (-2147217394, 'OLE error 0x8004100e', None, None)>
想请教:如何在Python中正确修改Windows 11电脑的主机名?
内容的提问来源于stack exchange,提问作者Noah
相关产品推荐
相关产品推荐

