AI软件下载
有趣网站推荐及实用软件下载

pywin32 pywintypes.com_error: (-2147417842, '应用程序调用一个已为另一线程整理的接口。

今天在使用pywin32库操作word文档的时候,每当向word文档输入内容就会报错,部分错误信息如下:

Exception ignored from cffi callback .callback_ptr at 0x0000018937783760>:
Traceback (most recent call last):
File “D:\python\NovaVoiceTyper\myenv\lib\site-packages\sounddevice.py”, line 857, in callback_ptr
return _wrap_callback(callback, data, frames, time, status)
File “D:\python\NovaVoiceTyper\myenv\lib\site-packages\sounddevice.py”, line 2735, in _wrap_callback
File “>”, line 2, in TypeText
pywintypes.com_error: (-2147417842, ‘应用程序调用一个已为另一线程整理的接口。’, None, None)

提示信息说接口被占用,大体意思就是你应用启用了多线程,最开始的那个线程创建了word应用,后面新启动的线程还是调用原来创建的那个word应用,所以会被占用,解决方法就是每次在启动新的线程的时候都创建一次word应用

如我原来代码:

word = win32com.client.Dispatch("Word.Application")
word.Visible = True  # 使Word可见

# 打开已有的文档
doc = word.Documents.Open(output_file)    
selection = word.Selection    

def callback(indata, frames, time, status):
    ......
    selection.TypeText(res) 

正确方法应该是把创建word的过程放进callback里,代码应该如下:

......
def callback(indata, frames, time, status):
    ......
    word = win32com.client.Dispatch("Word.Application")
    word.Visible = True  # 使Word可见

    # 打开已有的文档
    doc = word.Documents.Open(output_file)    
    selection = word.Selection  
    selection.TypeText(res) 

这样的话再重新运行应用,就不会报接口被占用的错误了。


AI软件用不了?2元爽玩4090: 立即体验>>

热门大语言模型API免费体验: 立即获取>>

软件催更及1对1人工答疑支持: https://nuowa.net/1806
赞(0) 打赏
软件无法使用?点击查看常见问题说明>>

最近更新

LTX2.3+comfyui音频驱动视频生成工作流

这是一个基于 ComfyUI 的 LTX 2.3 音视频同步生成工作流,核心功能是上传一段音频 + 参考图片(可多张图),自动生成与音频内容对应的视频,适合制作人物说话、唱歌等口型同步视频。工作流使用8位量化版ltx2.3模型,显存需求降低...

windows电脑C盘垃圾查找清理软件

电脑用了好几年了,尽管我安装软件从来不主动装到C盘,偶尔也会清理垃圾,但是用的久了,容量也是在慢慢减少。我C盘303G,现在就剩了24G了,已经会影响到系统性能和虚拟内存调度了,已经不能不管了。C盘不装软件的话大多都是缓存,文件太多了,有时...

Mineru PDF转markdown软件局域网版

对于有的电脑配置比较低或是win7系统等电脑无法使用Mineru情况,可以使用局域网内可运行软件的电脑运行Mineru,然后其它电脑或手机等终端输入IP地址,打开运行软件的IP地址来使用Mineru。 具体用法: 下载局域网版压缩包到本地电...

Studio One Pro 7免费开心版下载-诺瓦小站

Studio One Pro 7免费开心版下载

Studio One 7是一款专业数字音频工作站(DAW)软件,它是音乐制作、混音、母带处理与现场演出一体化的旗舰软件。 ✨ 核心功能 1. AI 智能音轨分离(Stem Separation) AI 驱动的音轨分离功能允许用户将混缩后的音...

觉得文章对你有帮助就打赏一下作者

非常感谢你的打赏,我将有更多的动力继续提供优质内容,让我们一起创建更加美好的世界!

支付宝扫一扫

微信扫一扫