Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

WallBreaker2/op

Repository files navigation

OP - Windows 自动化插件

GitHub Release CI License Platform

English Version

📖 简介 (Introduction)

OP (Operator & Open) 是一款专为 Windows 设计的开源自动化插件。作为一款现代化的桌面自动化解决方案,它提供了屏幕读取、输入模拟和图像处理等功能。

项目特点:

  • 原生开发: 基于 C++17 编写,注重运行效率。
  • 跨架构: 完整支持 32 位和 64 位应用程序。
  • 易于集成: 标准 COM 接口,兼容 Python, C#, C++, Lua 等多种语言。

📖 文档与工具 (Docs & Tools)

✨ 主要特性 (Key Features)

🖥️ 窗口与输入自动化

  • 后台操作: 向非激活或最小化的窗口发送按键和鼠标点击。
  • 输入模拟: 基于 Windows API (SendInput/SendMessage) 的系统级模拟。
  • 窗口管理: 查找、移动、调整大小以及查询窗口状态。

🖼️ 图像与颜色处理

  • 智能找图: 支持透明度和颜色偏差的模糊找图功能。
  • 内存找色: 高速的多点找色算法,直接读取内存数据。
  • 多引擎截图: 支持 GDI, DirectX (DX), 和 OpenGL 屏幕截图。
  • 安卓支持: 专为各类主流安卓模拟器定制的截图功能。

📝 OCR (光学字符识别)

  • 双引擎支持:
    • Tesseract: 由 Google Tesseract 引擎驱动,处理复杂文本识别。
    • Native: 轻量级、高速的字典匹配算法,适用于固定字体。
  • 极速响应: 专为实时游戏文字识别优化。

📦 安装 (Installation)

  1. 下载: 前往 GitHub Releases 下载最新版本的压缩包。
  2. 解压: 将文件解压到本地目录。
  3. 注册 COM 组件: 以 管理员身份 打开终端,并运行以下命令:
    # 对于 32 位应用程序
    regsvr32 op_x86.dll
    # 对于 64 位应用程序
    regsvr32 op_x64.dll

🚀 快速开始 (Python)

以下是一个使用 Python 调用插件进行找图的简单示例。

from win32com.client import Dispatch
import os
# 1. 初始化 COM 对象
op = Dispatch("op.opsoft")
print(f"插件版本: {op.Ver()}")
# 2. 设置路径 (可选,设置图片文件的基础路径)
# op.SetPath("C:\\Your\\Image\\Folder")
# 3. 执行找图
# 参数: x1, y1, x2, y2, pic_name, delta_color, sim, dir
# 分别为: 左上x, 左上y, 右下x, 右下y, 图片名, 偏色, 相似度, 方向
ret, x, y = op.FindPic(0, 0, 1920, 1080, "test.png", "000000", 0.9, 0)
if ret == 1:
 print(f"找到图片: ({x}, {y})")
 op.MoveTo(x, y)
 op.LeftClick()
else:
 print("未找到图片.")

🛠️ 源码编译 (Build from Source)

环境要求

  • Visual Studio 2022 (MSVC v143 toolset)
  • CMake (3.24 或更高版本)
  • Windows SDK (10.0.19041.0 或更高版本)

依赖项

本项目依赖以下第三方库:

  • Blackbone: 用于进程内存操作和注入 (静态链接)。
  • Kiero: 用于 DirectX Hook (源码集成)。
  • Tesseract: 用于 OCR 功能 (动态链接)。

从现在开始,推荐直接使用根目录 build.py 一键引导依赖并编译。脚本会自动处理:

  • 安装/复用 vcpkg(优先复用已安装的 VCPKG_ROOT%USERPROFILE%\\vcpkg)。
  • 一次性安装 x86/x64 所需的 gtestminhook
  • 拉取并构建 BlackBone(缓存到 build/_deps)。

如果您需要手动配置,仍可通过环境变量提供 BlackBone 路径。推荐设置 BLACKBONE_ROOT 指向 BlackBone 仓库根目录,CMake 会自动探测常见输出路径(包括命令行构建和旧版 VS 方案输出)。

set BLACKBONE_ROOT="D:\path\to\Blackbone"

如果自动探测失败,可显式指定:

cmake -S . -B build -DBLACKBONE_INCLUDE_DIR="D:/path/to/Blackbone/src" -DBLACKBONE_LIBRARY="D:/path/to/Blackbone/build/x64/BlackBone/Release/BlackBone.lib"

编译步骤

  1. 克隆仓库:

    git clone https://github.com/WallBreaker2/op.git
    cd op
  2. 一键安装依赖并编译(推荐):

    python build.py
  3. 常用参数:

    # 指定架构构建
    python build.py -a x86
    # 跳过依赖引导(已有完整环境时)
    python build.py --no-bootstrap-deps
    # 指定已有 vcpkg 路径
    python build.py --vcpkg-root D:/path/to/vcpkg
  4. 传统 CMake 流程(高级用户可选):

    cmake -S . -B build/Release
    cmake --build build/Release --config Release

🤝 社区与支持

  • Issues: GitHub Issues - 报告 Bug 或 提交功能建议。
  • Discussions: GitHub Discussions - 提问或分享想法。
  • QQ 群:
    • 1群: 743710486 (已满)
    • 2群: 27872381 (活跃)

📜 许可证

本项目基于 MIT License 开源。

📚 参考项目 (References)

  • TSPLUG - 参考了部分函数实现
  • Kiero - 提供了D3DHook的基础

About

Windows消息模拟,gdi,dx,opengl截图,找图,找字(OCR)

Resources

License

Stars

Watchers

Forks

Contributors 9

AltStyle によって変換されたページ (->オリジナル) /