☰
MHY_Scanner部署指南:CMake Install快速打包含Qt与FFmpeg DLL的Windows扫码登录应用
2026/9/25 5:01:45 网站建设 项目流程

MHY_Scanner部署指南:CMake Install快速打包含Qt与FFmpeg DLL的Windows扫码登录应用

【免费下载链接】MHY_ScannerMHY扫码登录器,支持从直播流抢码。项目地址: https://gitcode.com/gh_mirrors/mh/MHY_Scanner

MHY_Scanner 是一款免费的米哈游游戏扫码登录器,支持屏幕二维码自动识别与直播流抢码,一键登录崩坏3、原神、星穹铁道、绝区零的官服账号。本文是面向新手的完整部署教程:带你用CMake Install三步完成构建,将包含Qt 与 FFmpeg DLL的 Windows 应用打包成分发 ZIP,并逐条解析 install 规则,让你明白每个 DLL 是如何被收进发布包的。

📦 先认识它:屏幕识别 + 直播抢码双模式

MHY_Scanner 提供两种登录方式:

模式适用场景说明
🖥️ 监视屏幕日常登录自动识别任意显示在屏幕上的二维码
📡 监视直播间竞争激烈抢码输入RID后从直播流中抓取二维码

此外还支持多账号表格化管理、启动即扫、扫完自动退出等实用开关,详见 README.md。

抢码模式下,程序通过FFmpeg解码直播流画面,再交给OpenCV与本地扫码模型识别,这就是为什么打包时必须携带 FFmpeg 动态库。

🧩 依赖全景:Qt6、FFmpeg 与 vcpkg 如何协作

依赖作用来源
Qt 6.8界面(Widgets)需单独安装,CI 使用win64_msvc2022_64版
FFmpeg直播流解码、帧提取配置时自动下载官方预编译 win64 shared 版
OpenCV / cpr / OpenSSL / WebView2图像识别 / 网络 / 加密 / 登录页由 vcpkg.json 声明,vcpkg 统一安装
QR-Code-generator生成登录二维码仓库内置静态库,见 cmake/build_QR-Code-generator.cmake

两个值得注意的自动化设计:

  • FFmpeg 零配置:cmake/install_ffmpeg.cmake 在 configure 阶段检测不到 FFmpeg 时会直接下载并解压到构建目录,无需手动安装;
  • cpr 静态内嵌:cmake/build_cpr.cmake 通过 ExternalProject 将 cpr + libcurl 编为静态库,最终分发包里不产生额外 DLL。

🚀 一键部署:配置、编译、安装三步走

前置环境:Windows 10/11 + Visual Studio 2022(MSVC)+ CMake 3.26+ + Qt 6.8 + vcpkg。

获取源码:

git clone https://gitcode.com/gh_mirrors/mh/MHY_Scanner cd MHY_Scanner

官方 CI 工作流 .github/workflows/windows-build.yml 即标准流程,本地复刻只需三条命令:

# 1. 配置(vcpkg 作为工具链,静态 CRT 三元组) cmake -B build -DCMAKE_BUILD_TYPE=Release ` -DCMAKE_TOOLCHAIN_FILE=<vcpkg目录>\scripts\buildsystems\vcpkg.cmake ` -DVCPKG_TARGET_TRIPLET=x64-windows-static-md ` -DCMAKE_INSTALL_PREFIX=<安装目录> -DUNIT_TESTS=OFF -DDEV=OFF # 2. 编译 cmake --build build --config Release --parallel # 3. 安装(收集 exe 与全部 DLL) cmake --install build --config Release

💡x64-windows-static-md三元组让 vcpkg 依赖以静态方式链接进 exe,能显著减少运行时 DLL 数量;FFmpeg 是唯一保留动态链接的第三方库。

📦 Install 规则详解:DLL 如何被收进发布包

打包的核心逻辑集中在 CMakeLists.txt 的 install 段,目标目录为<前缀>/MHY_Scanner_1.1.15/(版本号随项目自动变化):

安装内容去向
MHY_Scanner.exe+ 调试符号 PDB根目录
Qt6Core.dllQt6Widgets.dllQt6Gui.dll根目录
avcodec-*.dllavformat-*.dllavutil-*.dllswscale-*.dllswresample-*.dll根目录
qwindows.dll等 4 个 platform 插件plugins/platforms/
qmodernwindowsstyle.dll样式插件plugins/styles/
ScanModel/ 扫码识别模型(caffemodel/prototxt)根目录

其中 FFmpeg DLL 列表由 CMakeLists.txt 中的file(GLOB ...)通配收集,编译结束还会通过 POST_BUILD 命令先拷贝一份到构建输出目录,保证开发时直接运行也不缺 DLL。

收集完成后,一条 PowerShell 命令即可产出分发包:

powershell Compress-Archive -Path "install\*" -DestinationPath "MHY_Scanner_1.1.15.zip"

接收者解压即用,另需安装一次 Visual C++ 运行时(README.md 中有下载指引)。

🧪 产物验证与常见问题

  • 启动即报缺 DLL:对照上表检查根目录是否含 3 个 Qt DLL + 5 个 FFmpeg DLL,缺失多因 FFmpeg 下载目录被清理后重新 install;
  • 界面白屏/无窗口:确认plugins/platforms/qwindows.dll与 exe 保持相对路径不变,插件目录不可单独移动;
  • 扫码识别失败:确认ScanModel目录随包一起分发,模型文件不可改名;
  • 调试符号:Release 包同样附带 PDB,便于崩溃时定位行号。

📁 关键文件速查

  • 主构建脚本与 install 规则:CMakeLists.txt
  • FFmpeg 自动下载脚本:cmake/install_ffmpeg.cmake
  • cpr 静态构建脚本:cmake/build_cpr.cmake
  • 依赖清单:vcpkg.json
  • 官方 CI 打包流程:.github/workflows/windows-build.yml
  • 扫码模型文件:ScanModel/

【免费下载链接】MHY_ScannerMHY扫码登录器,支持从直播流抢码。项目地址: https://gitcode.com/gh_mirrors/mh/MHY_Scanner

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询