jarvis
jarvis copied to clipboard
OSError: [WinError 6] Неверный дескриптор
Проделал все что нужно, установил все библиотеки/модули, сравнил их через команду pip list с файлом "requirements" , при запуске main.py в Visual Studio Code выдает OSError: [WinError 6] Неверный дескриптор (см скрин) и указывает на два файла, а именно : D:\jarvis-master\tts.py и D:\jarvis-master\main.py файлы находятся именно по этому пути, файлы не повреждены, не заблокированы, доступ к ним есть. Возможно не нужно было запускать его в VS , подумал я, попробовал запустить джарвис через PowerShell от имени администратора, вошел в директорию , ввел python main.py проходит секунд 5 и PowerShell возвращается к этой же команде (см скрин) Windows 11 Pro 22H2 22621.1555
Проверь версию Python, код тестировался только на версии Python 3.8.3
.
Также попробуй запустить через venv
.
Если не поможет, - почисти кэш Silero.
Еще вариант запустить код с CMD от имени администратора.
Воспроизвести ошибку не получается, так что вариантов почему так происходит может быть много.
Возможно у тебя проблемы из-за того что VS CODE использует неверную версию python. Попробуй поставить его отдельно, и сделать все по гайдам.
Попал сюда гугля проблемы с multiprocessing у win api
Используйте модуль multiprocess (форк multiprocessing) с расширеной сериализацией при помощи dill (аналог pickle)
Недавно ковырялся с одной старой прогой (которая отлично работает на Linux дистрах) которую переписывать было не охота, а чтоб работало надо) Вкратце: По некоторым причинам я не мог использовать requests, и использовал urllib3 который для чего-то использует RLock из threading который не сериализуется pickle-ом.. По итогу всё работает, и надеюсь к винде я ещё очень долго не вернусь XD