之前用win32com.client一直很正常,但是昨天下午突然崩了,一直提示:pywintypes.com_error: <-2147221021,‘操作无法使用’。
往下看,发现错误代码进一步为:pywintypes.com_error: <=2147221164, ‘没有注册类’
网上找了一下解决办法,基本都只说了一部分,我归纳总结一下:
1、不是64、32位的问题,因为我的系统是win7 64, Python是anaconda的64位;
2、com组件里丢失了Excel.Application是对的,找是否有com组建的办法可以看https://blog.csdn.net/l490134872/article/details/80250395
但是我和博主不一样的地方是,我在DCOM配置里根本就找不到Excel.Application
3、我搜索了一下Excel.exe,发现修改时间是中午11:50,我想到了下午2:00左右,我打开电脑后,发现桌面excel等的图标都丢失了,重启后正常,那个时候并没有想太多,可能那个时候就已经出bug了,个人怀疑有2种可能:1)、Office 365更新了,同时没有在DCOM里注册;2)、其它软件冲突造成丢失,我中午的时候在用mysql和navicat
4、不管如何,解决思路有了,就是要在DCOM里重新注册Excel.Application。我不知道是否有直接注册的办法,但我还是用了笨办法:重装office;
5、有人说重装了也解决不了问题,那是因为卸载后有一些注册表里的东东没有清理干净,所以我下载了office官方的清理工具o15-ctrremove.diagcab,先卸载office,再使用工具清除电脑内残留组建,最后重装,完美解决(这个方法也同样适合于office账号无法登陆的问题)
Python:pywintypes.com_error: -2147221021,'操作无法使用'的解决办法
最新推荐文章于 2024-07-23 22:16:25 发布