fix(deps): replace deprecated winsdk with winrt-Windows packages for Python 3.10-3.13 compatibility

This commit is contained in:
VolandSZ
2026-09-21 13:57:54 +03:00
parent 7a9112cb9f
commit a45ca6f9a9
4 changed files with 23 additions and 9 deletions

View File

@ -8,8 +8,9 @@
## 📋 Требования к системе
* **ОС:** Windows 10 или Windows 11 (64-bit) — необходима поддержка встроенного Windows Media OCR (`winsdk`).
* **Python:** версия 3.10, 3.11 или 3.12 (обязательно отметить галочку *"Add python.exe to PATH"* при установке).
* **ОС:** Windows 10 или Windows 11 (64-bit) — встроенный движок Windows Media OCR (`winrt-Windows.Media.Ocr`).
* **Python:** версия 3.10, 3.11, 3.12 или 3.13 (обязательно отметить галочку *"Add python.exe to PATH"* при установке). Visual Studio или C++ компиляторы НЕ требуются (все пакеты используют готовые бинарные wheels).
* **Языковые пакеты Windows:** В системе должен быть установлен английский язык (`English (United States)` в Параметры -> Время и язык -> Язык и регион) для работы OCR.
* **Права:** Запуск командной строки / батника с правами **Администратора** (необходимо для перехвата глобального Kill Switch клавишей `Q` и корректной эмуляции кликов в окно Unity).
* **Игра:** Запущенная игра DirtyLeague (рекомендуемое разрешение: 1920×1080 или в окне с соотношением 16:9).

View File

@ -99,8 +99,9 @@ game_bot/
## 5. Инструкции по установке и запуску на новом ПК
### Системные требования
* **ОС:** Windows 10/11 x64 (поддержка Windows Media OCR `winsdk`).
* **Python:** 3.10+ (с добавлением в `PATH`).
* **ОС:** Windows 10/11 x64 (поддержка Windows Media OCR `winrt-Windows.Media.Ocr`).
* **Python:** 3.10, 3.11, 3.12 или 3.13 (с добавлением в `PATH`). C++ компиляторы не требуются.
* **Языковые пакеты Windows:** В системе должен присутствовать английский язык (English US) для распознавания OCR.
* **Права:** Запуск от имени Администратора (для `keyboard` Kill Switch и эмуляции кликов в Unity).
### Установка (в 1 клик)

View File

@ -10,10 +10,17 @@ from typing import Optional, Tuple
import cv2
import numpy as np
import winsdk.windows.globalization as glob
import winsdk.windows.graphics.imaging as imaging
import winsdk.windows.media.ocr as win_ocr
import winsdk.windows.storage.streams as streams
try:
import winrt.windows.globalization as glob
import winrt.windows.graphics.imaging as imaging
import winrt.windows.media.ocr as win_ocr
import winrt.windows.storage.streams as streams
except ImportError:
import winsdk.windows.globalization as glob
import winsdk.windows.graphics.imaging as imaging
import winsdk.windows.media.ocr as win_ocr
import winsdk.windows.storage.streams as streams
class OcrReader:

View File

@ -5,4 +5,9 @@ pyautogui>=0.9.54
pydirectinput>=1.0.4
pywin32>=306
keyboard>=0.13.5
winsdk>=1.0.0b10
winrt-Windows.Foundation>=3.2.0
winrt-Windows.Foundation.Collections>=3.2.0
winrt-Windows.Media.Ocr>=3.2.0
winrt-Windows.Globalization>=3.2.0
winrt-Windows.Graphics.Imaging>=3.2.0
winrt-Windows.Storage.Streams>=3.2.0