Ошибка сбоя Python windll.user32.ReleaseDC

#python

#python

Вопрос:

Я просто следовал некоторому руководству по боту piano tiles, но я столкнулся с этой ошибкой, и я не знаю, что делать, чтобы решить ее, потому что Google не хватает знаний по этой конкретной теме. Я использую Win10 x64 и Python 3.9

Вот мой код:

 from pyautogui import *
import pyautogui
import time
import keyboard
import win32api, win32con
import random

#X:  486 Y:  800
#X:  611 Y:  800
#X:  732 Y:  800
#X:  835 Y:  800

def click(x,y):
    pyautogui.click(x,y)

while keyboard.is_pressed('q') == False:
    if pyautogui.pixel(486, 800)[0] == 0:
        click(486, 800)
    if pyautogui.pixel(611, 800)[0] == 0:
        click(611, 800)
    if pyautogui.pixel(732, 800)[0] == 0:
        click(732, 800)
    if pyautogui.pixel(835, 800)[0] == 0:
        click(835, 800)
  

и вот ошибка, которую я получаю:

 Traceback (most recent call last):
  File "D:PyPiano Tiles botpianotilesbot.py", line 24, in <module>
    if pyautogui.pixel(835, 800)[0] == 0:
  File "C:UsersdogAppDataLocalProgramsPythonPython39libsite-packagespyscreeze__init__.py", line 584, in pixel
    return (r, g, b)
  File "C:UsersdogAppDataLocalProgramsPythonPython39libcontextlib.py", line 124, in __exit__
    next(self.gen)
  File "C:UsersdogAppDataLocalProgramsPythonPython39libsite-packagespyscreeze__init__.py", line 113, in __win32_openDC
    raise WindowsError("windll.user32.ReleaseDC failed : return 0")
OSError: windll.user32.ReleaseDC failed : return 0
  

Комментарии:

1. Теперь это исправлено в pyscreeze-1.0.28 (который pyautogui использует и где была ошибка).