resym 是一个可从 PDB 文件中查看其中的 C 和 C++ 声明的实用程序。此项目的灵感来源于
PDBRipper
和
pdbex
。
-
可跨平台;
-
提供 GUI 和 CLI 两个版本;
-
C 和 C++ 类型重构;
-
C 和 C++ 类型差异生成 (两个 PDB 之间);
-
较好性能,即使在体积较大的 PDB 文件上;
GUI 版本可能难以显示大量的输出 (>20 MB),禁用语法高亮 (或完全依赖重建) 会有所帮助,但通常 CLI 版本更适合转储具有大量依赖项的类型。
为何不选择其他的 PDB Dumper
我经常需要以交互方式从 1GB 多的 PDB 文件中轻松提取和分析 C++ 类型,但到目前为止我还没有找到一个工具可以满足我的所有要求,所以我才制作此工具。如果你和我一样,这个工具可能对你有用。
在 Ubuntu 上,需要安装这两个库:libxcb-shape0-dev 和 libxcb-xfixes0-dev
-
# Optional: install rust
-
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
-
-
$ git clone https://github.com/ergrelet/resym.git
-
$ cd resym; cargo build --release
-
$ ./target/release/resym
复制代码
如果你想使用 GUI 版本,可简单运行 resym 可执行程序,CLI 版本 (resymc) 也是可用
-
resymc 0.2.0
-
resymc is a utility that allows browsing and extracting types from PDB files.
-
-
USAGE:
-
resymc.exe <SUBCOMMAND>
-
-
FLAGS:
-
-h, --help Prints help information
-
-V, --version Prints version information
-
-
SUBCOMMANDS:
-
diff Compute diff for a type between two given PDB files
-
dump Dump type from a given PDB file
-
help Prints this message or the help of the given subcommand(s)
-
list List types from a given PDB file
-
复制代码