dumpbin.exe调试命令

Visual Studio 2019 C++调试断点失效:符号文件(.pdb)加载问题全解析 在C++程序开发中,调试是定位和修复代码问题的核心环节。其原理在于调试器需要将源代码中的行号、变量名与运行时机器指令地址精确对应,这一映射关系依赖于符号文件(.pdb)。当符号文件缺失、版本不匹配或路径错误时,调试器便无法识别源代码位置,导致断点失效,这是C++开发者从托管语言转型或处理复杂项目依赖时的常见挑战。从技术价值看,掌握符号文件的生成、加载与配置机制,是保障高效调试、提升开发效率的关键。尤其在Visual Studio 2019这类集成开发环境中,正确处理调试配置、项目依赖和符号路径,能直接解决“ 阅读详情
在使用VC时,可以用DUMPBIN。EXE来得到某个DLL中所输出的符号的清单。如下面的

命令:dumpbin -exports Cmpnt1.dll
如:

C:/WINDOWS/system32>dumpbin -exports msgsvc.dll
Microsoft (R) COFF Binary File Dumper Version 6.00.8447
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.


Dump of file msgsvc.dll

File Type: DLL

  Section contains the following exports for msgsvc.dll

           0 characteristics
    41107F60 time date stamp Wed Aug 04 14:17:04 2004
        0.00 version
           1 ordinal base
           2 number of functions
           2 number of names

    ordinal hint RVA      name

          1    0 00004ABF ServiceMain
          2    1 00004595 SvchostPushServiceGlobals

  Summary

        1000 .data
        1000 .reloc
        1000 .rsrc
        8000 .text


C:/>dumpbin
Microsoft (R) COFF Binary File Dumper Version 6.00.844
Copyright (C) Microsoft Corp 1992-1998. All rights res

usage: DUMPBIN [options] [files]

   options:

      /ALL
      /ARCH
      /ARCHIVEMEMBERS
      /DEPENDENTS
      /DIRECTIVES
      /DISASM
      /EXPORTS
      /FPO
      /HEADERS
      /IMPORTS
      /LINENUMBERS
      /LINKERMEMBER[:{1|2}]
      /LOADCONFIG
      /OUT:filename
      /PDATA
      /RAWDATA[:{NONE|BYTES|SHORTS|LONGS}[,#]]
      /RELOCATIONS
      /SECTION:name
      /SUMMARY
      /SYMBOLS


若要运行 DUMPBIN,请使用下列语法:

DUMPBIN [options] files...

指定一个或多个二进制文件,以及控制信息所需的任何选项。DUMPBIN 将该信息显示到标准输出。可以将输出重定向到文件,或者使用 /OUT 选项为输出指定文件名。

当在文件上运行 DUMPBIN 但未指定选项时,DUMPBIN 显示 /SUMMARY 输出。

当键入命令 dumpbin 但没有任何其他命令行输入时,DUMPBIN 显示汇总其选项的用法语句。

DUMPBIN 选项

/ALL

此选项显示除代码反汇编外的所有可用信息。使用 /DISASM 显示反汇编。可以与 /ALL 一起使用 /RAWDATA:NONE 来省略文件的原始二进制详细资料。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/ARCHIVEMEMBERS

此选项显示有关库成员对象的最少信息。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/CLRHEADER file

此处:

file
用 /clr 生成的图像文件。
备注

CLRHEADER 显示有关在任何托管程序中使用的 .NET 头的信息。输出显示 .NET 头及其中各节的位置和大小(以字节计)。

File Format Spec.doc 描述 .NET 头中的信息。NET SDK 将 File Format Spec.doc 安装在 Tools Developers Guide 目录中。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/DIRECTIVES

此选项转储图像中由编译器生成的 .directive 节。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/DEPENDENTS

转储图像从中导入函数的 DLL 的名称。不要转储导入函数名。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/DISASM

此选项显示代码段的反汇编,如果出现在文件中则使用符号。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/EXPORTS

此选项显示从可执行文件或 DLL 导出的所有定义。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/FPO

此选项显示框架指针优化 (FPO) 记录。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/HEADERS

此选项显示文件头和每节的头。当用于库时,显示每个成员对象的头。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/IMPORTS[:file]

此选项显示导入到可执行文件或 DLL 的 DLL 列表(静态链接的和延迟加载)和上述每个 DLL 的各个导入。

可选 file 规范允许指定仅显示某个 DLL 的导入。例如:

dumpbin /IMPORTS:msvcrt.dll

此选项显示的输出与 /EXPORTS 输出相似。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/LINENUMBERS

此选项显示 COFF 行号。如果对象文件是用程序数据库 (/Zi)、C7 兼容 (/Z7) 或仅限行号 (/Zd) 编译的,则它包含行号。如果可执行文件或 DLL 是与生成调试信息 (/DEBUG) 链接的,则它包含 COFF 行号。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/LINKERMEMBER[:{1|2}]

此选项显示库中定义的公共符号。指定参数 1 将按对象顺序显示符号及其偏移量。指定参数 2 将显示对象的偏移量和索引号,然后按字母顺序列出这些符号及每个符号的对象索引。若要两个输出都获得,指定不带数字参数的 /LINKERMEMBER。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/LOADCONFIG

此选项转储 IMAGE_LOAD_CONFIG_DIRECTORY 结构,此结构是由 Windows NT 加载程序使用并在 WINNT.H 中定义的可选结构。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/OUT:filename

此选项指定输出的 filename。默认情况下,DUMPBIN 将信息显示到标准输出。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/PDBPATH[:VERBOSE] filename

此处:

filename
要为其查找匹配 .pdb 文件的 .dll 或 .exe 文件名。
VERBOSE(可选)
报告曾尝试在其中定位 .pdb 文件的所有目录。
备注

/PDBPATH 将沿调试器搜索 .pdb 文件的同一路径搜索计算机,并将报告哪些 .pdb 文件(若有)和 filename 中指定的文件相对应。

使用 Visual Studio 调试器时可能会遇到问题,这是因为调试器对调试文件的不同版本使用 .pdb 文件。

/PDBPATH 将沿下列路径搜索 .pdb 文件:

  • 检查可执行文件驻留的位置。
  • 检查写入可执行文件的 PDB 的位置。这通常是图像被链接时的位置。
  • 沿 Visual Studio IDE 中配置的搜索路径检查。
  • 沿 _NT_SYMBOL_PATH 和 _NT_ALT_SYMBOL_PATH 环境变量中的路径检查。
  • 在 Windows 目录中检查。
/PDATA

仅用于 RISC 处理器。

此选项从图像或对象转储异常表 (.pdata)。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/RAWDATA[:{1|2|4|8|NONE[,number]]

此选项显示文件中每节的原始内容。参数控制显示格式,如下所示:

参数结果
1默认值。内容以十六进制字节显示,如果内容具有打印的表示形式,则还显示为 ASCII 字符。
2内容显示为十六进制的 2 字节值。
4内容显示为十六进制的 4 字节值。
8内容显示为十六进制的 8 字节值。
NONE取消显示原始数据。此参数对控制 /ALL 输出很有用。
Number显示的行被设置为每行具有 number 个值的宽度。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/RELOCATIONS

此选项显示对象或图像中的任何重定位。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/SECTION:section

此选项限制与指定的 section 有关的信息的输出。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/SUMMARY

此选项显示有关节的最少信息(包括总大小)。如果未指定其他选项,则此选项为默认值。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/SYMBOLS

此选项显示 COFF 符号表。符号表存在于所有对象文件中。而对于图像文件,只有当它是与 /DEBUG 链接的时,它才包含 COFF 符号表。

下面是关于 /SYMBOLS 输出的说明。通过查阅 winnt.h(IMAGE_SYMBOL 和 IMAGE_AUX_SYMBOL)或 COFF 文档,可找到有关 /SYMBOLS 输出含义的附加信息。

假设有下列示例转储:

Dump of file main.obj
File Type: COFF OBJECT
COFF    SYMBOL    TABLE
000    00000000   DEBUG      notype      Filename      | .file
main.cpp
002   000B1FDB   ABS      notype      Static      | @comp.id
003   00000000   SECT1      notype      Static      | .drectve
Section length       26, #relocs   0, #linenums    0, checksum 722C964F
005   00000000   SECT2      notype      Static      | .text
Section length      23, #relocs      1, #linenums    0, checksum 459FF65F, selection    1 (pick no duplicates)
007   00000000   SECT2      notype ()   External      | _main
008   00000000   UNDEF      notype ()   External      | ?MyDump@@YAXXZ (void __cdecl MyDump(void))
String Table Size = 0x10 bytes
Summary
26 .drectve
23 .text

对于以符号号码开头的行,下列说明描述了含有与用户相关的信息的列:

  • 开头的 3 位数字是符号索引/号码。
  • 如果第三列包含 SECTx,则符号在对象文件的那一节中定义。但如果出现 UNDEF,则它不在那个对象中定义并且必须在其他地方被解析。
  • 第五列 (Static, External) 说明符号是否只在那个对象的内部可见,或者是否是公共的(外部可见)。静态符号 _sym 不会链接到公共符号 _sym;这些符号是名为 _sym 的函数的两种不同实例。

编号行中的最后一列是符号名(修饰名和未修饰名)。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

/UNWINDINFO

在程序图像(例如 exe 和 dll)中转储结构化异常处理 (SEH) 表的展开描述符。/UNWINDINFO 仅适用于 IA64 图像。

只有 /HEADERS DUMPBIN 选项可用于由 /GL 编译器选项产生的文件。

dumpbin软件 逆向工程中比较常用的一款软件。比较经典的一款软件。给需要的人 立即下载

相关推荐

Windows dumpbin GUI 小工具

这是一个封装了 windows dumpbin.exe 的 GUI 工具,用以辅助程序员可以在 GUI 上调用 dumpbin 来查看 dll, exe, lib 的相关信息,包括导入符号,导出符号等相关 PE 信息。

【免费下载】 dumpbin.exe文件下载

dumpbin.exe文件下载 【下载地址】dumpbin.exe文件下载 本仓库提供了一个名为`dumpbin.exe`的资源文件下载。`dumpbin.exe`是一个用于查看DLL和EXE文件位数的工具。通过使用该工具,您可以轻松确定目标文件是32位还是64位 ...

gitblog_09719的博客 2407

dumpbin.zip

dumpbin,分享给大家一起使用,用于查看dll属性,提供给找不到的小伙伴,收点积分意思一下,哈哈!!

dumpbin

dumpbin dumpbin.exe /all D:\3D\MyLuaProj\Debug\MyLuaProj.lib > D:\3D\MyLuaProj\Debug\MyLuaProj.txt

weixin_42084655的博客 763

dumpbin.exe(含使用说明)

如果有使用问题的,欢迎加我的QQ:859872666

dumpbin.rar.rar

dumpbin.rar.rar

dumpbin.exe 使用说明

dumpbin.exe 使用说明 【下载地址】dumpbin.exe使用说明 dumpbin.exe 是一款专为DOS环境设计的实用工具,能够帮助用户在命令行中进行高效操作。它简单易用,只需将文件放置在指定目录,通过DOS命令窗口即可快速启动。无论是文件分析还是系统调试,dumpbin.exe 都能提供稳定支持。其轻量化...

gitblog_06753的博客 477

dumpbin.exe文件下载

查看dll-exe文件的位数, 有相应的工具和测试用例demo. 查看dll-exe文件的位数, 有相应的工具和测试用例demo.

DLL/EXE查看工具Dumpbin

一般情况下,我们需要查看一个DLL或EXE中的包含的函数或是依赖的函数之类的信息,可以使用VS自带的工具dumpbin; 可以直接在命令行下输入dumpbin就可以查看他的使用说明,如果未显示,可以先运行VS安装目录下的vcvarsall.bat来设置一下环境变量就可以了 Microsoft Windows XP [版本 5.1.2600] (C) 版权所有 1985-2001 Mic...

晚晴小筑 123

dumpbin独立工具

dumpbin 是一个 微软提供的命令行工具,全名通常叫 Microsoft COFF/PE Dumper,主要用于分析 Windows 下的二进制文件(比如 .exe、.dll、.lib)。 它属于 Microsoft Visual Studio 工具链的一部分,本质上是给开发者做底层分析用的。 这里为了方便其他不使用Microsoft Visual Studio 的工程师使用,进行了程序的抽离。

Cadence Allegro通过手工绘制板框的方法

Cadence Allegro通过手工绘制板框的方法 Cadence Allegro绘制板框有三个方法: 1、通过手工绘制板框; 2、通过向导绘制板框; 3、通过导入DXF文件导绘制板框; 本章将教会大家如何通过手工的方法绘制100mm的矩形板框。 方法步骤如下: 一、通过放置绘图工具2D线绘制; 1、运行Cadence Allegro软件,打开File菜单栏,选择New。 2、这时软件会弹出Ne...

LGCPCB的博客 2万+

VS自带工具:dumpbin的使用查看Lib,dll等

VS自带工具:dumpbin的使用查看Lib,dll等 有时候我们想查看一个exe引用了哪些动态库,或者我们想看某个动态库包含哪些接口函数,这个时候可以使用dumpbin.exe工具: 输入Dumpbin -imports calldll.exe查看它的输入信息,可以看到它加载了***.dll 输入dumpbin –exports dlltest.dll,列出导出函数 开始->所有程序->Microsoft Visual Studio 2010->Visual Studio Tools

qq_43331089的博客 7247

当勒索软件盯上虚拟化层:从CVE-2025-22225漏洞看ESXi安全加固要点

本文深度剖析了针对VMware ESXi虚拟化层的CVE-2025-22225等漏洞链的攻击原理,揭示了攻击者如何利用VMCI、HGFS组件从虚拟机逃逸至宿主机。文章从实战角度出发,系统性地提出了ESXi安全加固的核心策略,包括禁用非必要服务、强化主机配置、实施网络分段、建立实时监控与自动化补丁管理体系,为企业构建纵深防御体系提供了具体可行的操作指南。

terraform7cloud的博客 853

VS自带工具:dumpbin的参数详解

VS自带工具:dumpbin的参数详解 一般情况下,我们需要查看一个DLL或EXE中的包含的函数或是依赖的函数之类的信息,可以使用VS自带的工具dumpbin; 可以直接在命令行下输入dumpbin就可以查看他的使用说明,如果未显示,可以先运行VS安装目录下的vcvarsall.bat来设置一下环境变量就可以了 Microsoft Windows XP [版本 5.1.2600] (C) 版权所有 1985-2001 Microsoft Corp. C:/Documents and Settings/Ad

qq_43331089的博客 3668

CST仿真提速秘籍:用好Local Mesh,别再让简单结构拖慢你的仿真速度

本文深入探讨了CST仿真中Local Mesh技术的应用,通过区域加密与全局排除策略,显著提升电磁仿真效率。针对5G天线阵列、微波滤波器等多尺度结构模型,提供了网格划分的黄金法则和实战技巧,帮助工程师优化仿真速度与精度,特别适用于电磁仿真和网格设置场景。

weixin_27134495的博客 406

Fluent动网格实战:5种区域运动类型详解与配置避坑指南

本文详细解析了Fluent动网格技术中的五种区域运动类型,包括固定、刚体、变形、用户自定义和系统耦合,并提供了配置技巧与避坑指南。通过实际案例和参数优化建议,帮助工程师有效解决网格变形、计算稳定性等常见问题,提升CFD仿真效率。

weixin_28339967的博客 414

使用Microsoft Visual Studio提供的DumpBin.exe工具查看DLL导出段

以VS2008为例说明如何使用DumpBin.exe工具,其他版本的使用方式应该一样,可能只是存放位置不同~(o゚▽゚)o Step1: 打开Tools-》Visual Studio 2008 Command Prompt,打开命令行窗口 Step2:点击后打开命令行窗口   Step3:查看某个DLL的导出段,通过执行dumpbin -exports xxx.dll命令查看dll文件...

Quellaaa的博客 2079

薄膜比拟、开口截面扭转承载力以及风电混塔水平缝张开状态下抗扭承载力推导

风电混塔水平缝张开状态下的抗扭承载力推导,从弹性力学说起

George的博客 872

VS中dumpbin.exe工具的使用

用VS2010生成的.obj文件、.lib库、.dll库、.exe执行文件,如果想查看其中这些文件或库包含了哪些函数以及相关的信息(符号清单),可以通过VS2010自带的dumpbin工具来完成。          dumpbin.exe为Microsoft  COFF二进制文件转换器,它显示有关通用对象文件格式(COFF)二进制文件的信息。可用使用dumpbin检查COFF对象文件、标准C

jiangqin115的专栏 1万+

安卓App开发 篇三:Android SDK和API

Jetpack 是一个由多个库组成的套件,可帮助开发者遵循最佳做法、减少模板代码并编写可在各种 Android 版本和设备中一致运行的代码,让开发者可将精力集中于真正重要的编码工作。hl=zh-cnhl=zh-cnWorkManager 是 Android Jetpack 的一部分,是用于持久性工作的推荐解决方案,适用于需要通过应用重启和系统重新启动来调度的工作,也是后台处理操作的主要推荐 API。立即执行:必须立即开始且很快完成的任务,可以加急,使用和Worker,通过对调用处理加急工作。

生活在别处 1279

【vsomeip3 教程】基于 vSomeIP 3.5 的路由域实践:从配置到运行状态的完整指南

___ > 前言(读者定位与准备) 目标读者:在 Linux 上做分布式/车载中间件通信的 C++ 工程师。 > 先决条件:CMake、Boost 基础;理解 TCP/UDP 与多进程通信。 > 文中术语:Routing Host(路由进程)、Application、Service/Instance、Method、Event/EventGroup、SOME/IP-SD。 > 演示环境:单机多进程 & 跨主机两套对照。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 1159

[置顶] VS自带工具:dumpbin的使用

有时候我们想查看一个exe引用了哪些动态库,或者我们想看某个动态库包含哪些接口函数,这个时候可以使用dumpbin.exe工具: 1.输入Dumpbin -imports calldll.exe查看它的输入信息,可以看到它加载了***.dll 2.输入dumpbin –exports dlltest.dll,列出导出函数 开始->所有程序->Microso

匆匆那年 541

一文读懂「Chain of Thought,CoT」思维链

Chain-of-Thought(CoT)是一种改进的Prompt技术,目的在于提升大模型LLMs在复杂推理任务上的表现,对于复杂问题尤其是复杂的数学题大模型很难直接给出正确答案。如算术推理(arithmetic reasoning)、常识推理(commonsense reasoning)、符号推理(symbolic reasoning)。COT通过要求模型在输出最终答案之前,显式输出中间逐步的推理步骤这一方法来增强大模型的算数、常识和推理能力。简单,但有效。2022 年,在 Google 发布的论文。

女王の专属领地 4万+
上一篇: error C2440: “static_cast”: 无法从“UINT (__thiscall CTestDlg::* )(CPoint)”转换为
下一篇: 窗口破坏过程与Windows消息循环
ShenRui
博客等级 码龄20年 63粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值