Использование win32client SAPI.SpVoice с многопоточностью приводит к pywintypes.com_error - PullRequest
0 голосов
/ 18 апреля 2019

Я пытаюсь использовать поток со встроенной голосовой системой wincl.Однако я сталкиваюсь с этой ошибкой:

pywintypes.com_error: (-2147221008, 'CoInitialize не был вызван.', Нет, Нет)

, что я могуне расшифровываю.

Вот мой код:

import win32com.client as wincl
import time, threading


def ten_second_timer():
    t =threading.Timer(10, ten_second_timer)
    speak = wincl.Dispatch("SAPI.SpVoice")
    speak.Speak("10 seconds have passed")
    t.start()


t =threading.Thread(target = ten_second_timer)
t.start()

1 Ответ

1 голос
/ 18 апреля 2019

Вам нужно вызвать pythoncom.CoInitialize или pythoncom.CoInitializeEx в неосновном потоке, чтобы иметь возможность использовать в нем COM.

...