hexf00 / QQImpl

调用QQ Mojo IPC与WeChatOCR

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

QQImpl

项目说明

本项目为通过逆向QQNT,将QQ封装的Mojo IPC模块独立出来,可以在任何项目中集成此模块,利用QQ Mojo IPC进行IPC通信。
同时逆向出调用WeChatOCR的方法,集成此模块也可以方便的调用WeChatOCR。

QQIMPL_TEST.7z是测试使用的, ParentIpc和ChildIpc用于测试Mojio IPC功能, OcrTest用于测试WeChatOCR功能

使用说明

1. DLL版

DLL版为将调用WeChatOCR的操作封装成了DLL, 请在Release下载编译好的DLL。
并在QQImplDLL\UsageExample下载调用示例, 包括c++与python的调用示例。

2. 文件版

假设你的项目结构是这样的:
.
├─Bin
├─YourProject
├─QQImpl

IPC

32位程序依赖parent-ipc-core-x86.dll
64位程序依赖parent-ipc-core-x64.dll

  1. 在vs项目中添加文件: QQIpc.cpp
  2. 附加包含目录添加: $(SolutionDir)..\QQImpl\QQIPC

如果是x64则还需要:

  1. 在vs项目中新添加文件: QQIpcAsm.asm
  2. 右键项目->生成依赖项->生成自定义->将masm勾上
  3. 右键QQIpcAsm.asm属性->项类型改为 Microsoft Macro Assembler

OCR

在QQImpl\QQOCR\ocr_lib中有编译好的libprotobuf (3.20.3), 可以自己编译protobuf, 再用protoc.exe编译一下QQImpl\QQOCR\ocr_protobuf\ocr_protobuf.proto即可生成ocr_protobuf.pb.h与ocr_protobuf.pb.cc

  1. 在vs项目中添加文件: QQOcr.cpp ocr_protobuf.pb.cc
  2. 附加包含目录添加:
    $(SolutionDir)..\QQImpl\QQOCR
    $(SolutionDir)..\QQImpl\QQOCR\ocr_protobuf\
  3. 在链接器附加依赖库添加: $(SolutionDir)..\QQImpl\QQOCR\ocr_lib\对应的lib
  4. 如果想要使用dll版的libprotobuf, 需要在预处理器定义里添加PROTOBUF_USE_DLLS

如果是x64则还需要:

  1. 在vs项目中新添加文件: QQOcrAsm.asm
  2. 右键项目->生成依赖项->生成自定义->将masm勾上
  3. 右键QQOcrAsm.asm属性->项类型改为 Microsoft Macro Assembler

About

调用QQ Mojo IPC与WeChatOCR

License:GNU General Public License v3.0


Languages

Language:C++ 88.1%Language:Assembly 4.6%Language:Python 4.5%Language:C 2.8%