10 分钟跑通 chromatic:从 clone 到注入的完整上手指南

10 分钟跑通 chromatic:从 clone 到注入的完整上手指南 10 分钟跑通 chromatic从 clone 到注入的完整上手指南【免费下载链接】chromaticUniversal modifier for Chromium/V8 | 广谱注入 Chromium/V8 的通用修改器项目地址: https://gitcode.com/gh_mirrors/be/chromatic克隆了 BetterNCM 仓库打开 README 却发现使用方法一栏只写着待完善别慌。这个仓库已经重写为 chromatic——一款能注入 Chromium/V8 进程的通用修改器跑起来的路径其实是固定的克隆仓库 → 构建 TS 绑定 → xmake 编译 → 跑 gtest 自测 → 产出可注入的库。这篇文章带你把这条链路走完。动手前先确认工具链和三个构建产物项目用 C23 编写以 xmake跨平台构建工具地位类似 CMake作为构建系统另外还需要 Node.js 和 pnpm 来打包 TypeScript 绑定。开工前先花半分钟看根目录xmake.lua里定义的三个目标明白你正在构建什么构建目标产物作用chromatic-core静态库核心引擎含 JS 运行时与内存/拦截能力chromatic-test可执行文件gtest 自测程序用来验证构建成功chromatic-injectee.so/.dll真正注入目标进程使用的库注意如果你在找旧版 BetterNCM 安装器Rust 写的相关代码已整体存档当前仓库是重写后的 chromatic一切以仓库最新 README 为准。先构建 TypeScript 绑定再编译打开终端克隆仓库并进入目录git clone https://gitcode.com/gh_mirrors/be/BetterNCM cd BetterNCM构建顺序有个坑chromatic-core会直接把 TypeScript 绑定产出的dist/index.js编译进二进制跳过这步xmake 会直接报找不到文件。先进绑定目录打包cd src/core/typescript pnpm install pnpm build cd ../..回到仓库根目录再编译xmake build首次运行时 xmake 会自动下载并安装 capstone、libffi、gtest 等依赖耐心等几分钟。产物放在build/平台/架构/debug/下例如build/linux/x86_64/debug/chromatic-test。用一条测试用例验证构建结果不必等全套跑完先跑一个断点用例./build/linux/x86_64/debug/chromatic-test --gtest_filter*SoftwareBreakpoint_Basic*看到[ PASSED ] 1 test.说明核心引擎没问题。想完整验证就整个跑一遍内存、拦截、断点、FFI 的用例都放在 测试代码 里./build/linux/x86_64/debug/chromatic-test找不到独立可执行文件它到底怎么用编译完你会发现没有主程序可点——chromatic 的用法是注入用 fripack CLI 工具把一段 JS 脚本打进chromatic-injectee再加载进目标 Chromium 系进程它会自动执行你的 JS。JS 的提供方式有兩種由嵌入配置决定结构定义在src/injectee/config.h模式行为适用场景EmbedJsJS 源码直接编译进库发布、交付WatchPath从文件路径读取文件变化自动重载开发调试开发期推荐WatchPath改完脚本保存注入的进程就会重新执行省去反复注入的麻烦。编译失败最常见是哪三个坑xmake 没装或版本过旧先xmake --version确认安装方式以 xmake 官方文档对应平台指南为准。报缺少dist/index.jsTypeScript 绑定没构建或产物被清掉了回到上节重跑pnpm install和pnpm build。依赖下载失败xmake 包默认走网络拉取网络不稳时可在 deps 目录 里核对各依赖声明的版本。想动手改脚本时函数拦截、断点、内存读写的具体 API 行为都在 API 文档 里有逐项说明遇到 bug 可以直接去仓库 issue 区提反馈中英文都接受。【免费下载链接】chromaticUniversal modifier for Chromium/V8 | 广谱注入 Chromium/V8 的通用修改器项目地址: https://gitcode.com/gh_mirrors/be/chromatic创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考