首页 > 其他分享 >dumpbin的使用方法_dumpbin 的基础使用

dumpbin的使用方法_dumpbin 的基础使用

时间:2023-12-14 17:36:57浏览次数:31  
标签:选项 dumpbin dll vs 使用 DLL 方法

要查看exe依赖哪些动态库或某个DLL包含哪些接口函数依赖哪些动态库,可以使用depends工具或者vs自带的dumpbin工具,这里使用vs自带的dumpbin

启动

dumpbin 是使用vs命令行的,有两种方法打开:

1、打开vs,工具-命令行-开发者命令提示

2、开始菜单-visual stdio xxxx-命令提示符

使用

使用很简单,语法如下:

DUMPBIN [options] files...

files 为绝对路径,或者将命令行切换到文件所在目录使用

常见用法

一般常见的用法是查看exe依赖哪些动态库或某个DLL包含哪些接口函数依赖哪些动态库

# 查看dll接口函数

dumpbin /exports xx.dll

# 查看exe、dll依赖的动态库

dumpbin /dependents xx.dll

参数

如果记忆dumpbin的参数比较麻烦,可以在打开的vs命令行输入dumpbin,然后就会输出全部参数:

用法: DUMPBIN [选项] [文件]

选项:

/ALL

/ARCHIVEMEMBERS

/CLRHEADER

/DEPENDENTS

/DIRECTIVES

/DISASM[:{BYTES|NOBYTES}]

/ERRORREPORT:{NONE|PROMPT|QUEUE|SEND}

/EXPORTS

/FPO

/HEADERS

/IMPORTS[:文件名]

/LINENUMBERS

/LINKERMEMBER[:{1|2}]

/LOADCONFIG

/NOLOGO

/NOPDB

/OUT:filename

/PDATA

/PDBPATH[:VERBOSE]

/RANGE:vaMin[,vaMax]

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

/RELOCATIONS

/SECTION:名称

/SUMMARY

/SYMBOLS

参数解释:

/all

此选项显示除代码反汇编外的所有可用信息。 使用/DISASM显示反汇编。 可以使用/RAWDATA: NONE/所有到忽略的文件的原始二进制的详细信息。

/dependents

可以使用此选项确定要与应用程序一起重新分发的 Dll, 或查找缺少的依赖项的名称。

/exports

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

/imports

此选项可显示的 Dll 列表 (静态链接并延迟加载) 的导入到一个可执行文件或 DLL 和的各个导入从每个这些 Dll。(可以显示dll使用的从其他dll导入的函数),可以指定某个dll

dumpbin /IMPORTS:msvcrt.dll

其他用法

导出def、lib:

实测只能导出debug版的dll

dumpbin test.dll /EXPORTS /OUT:test.def

lib /def:test.def /MACHINE:IX86 /out:test.lib

参考
————————————————
版权声明:本文为CSDN博主「花半楼」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_35918734/article/details/113014871

标签:选项,dumpbin,dll,vs,使用,DLL,方法
From: https://www.cnblogs.com/yuanhanqi/p/17901629.html

相关文章

  • 【操作】WinDriver使用汇总
    一、注册码WD1200以上版本可用:sn:a8dc72felicense:6A2BA669F1814714932DFDBA712F89A66B56.39687A0Blicense:6C3C3225C73EFB96D73EADCFE321F554FB60D65C.A9AB070E 二、安装过程官网:https://www.jungo.com/windriver/manual/ch3_installing_windriver.html 三、生成USB驱......
  • crontab定时任务不执行?那就试试最初的方法吧
    问题背景服务器的操作系统是centos7,没有python3,给它安装了一个miniconda3,然后发现python脚本手动执行没问题,放到定时任务里面就不执行了。定位问题查看/etc/crontab文件,内容如下。SHELL=/usr/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=root#Fordetailsseem......
  • os模块的使用
    1.os.getcwd()、os.path.basename()、os.path.join()用法: 2.os.path.exists()、os.path.isdir()、os.path.isfile()、os.listdir()用法: 3.os.walk()用法: 4.os.scandir()用法: 5.os.stat()、os.mkdir()、os.makedirs()用法: 6.os.rename()用法: 7.os.remove()用法:......
  • 秦疆的Java课程笔记:70 面向对象 方法重写
    重写都是方法的重写,和属性没有关系。//父类写一个静态方法======================publicclassA{publicstaticvoidtest(){System.out.println("A=>test()");}}//子类也写一个静态方法====================publicclassBextendsA{......
  • grpc使用nginx代理配置
    参考:https://www.nginx.com/blog/nginx-1-13-10-grpc/重点是标记红色的部分http{log_formatmain'$remote_addr-$remote_user[$time_local]"$request"''$status$body_bytes_sent"$http_referer"'......
  • Python实现软件设计模式2:工厂方法模式
    特点工厂存在父类和子类,产品存在父类和子类。工厂父类负责定义创建产品对象的公共接口,工厂子类负责生成具体的产品对象。包含的角色Product抽象产品ConcreteProduct具体产品Factory抽象工厂ConcreteFactory具体工厂模式分析工厂方法模式是简单工厂模式的进......
  • Python多线程计算的方法及示例代码
    Python是一种非常流行的编程语言,支持多种并发编程的方式,其中包括多线程。多线程允许程序同时执行多个任务,从而提高了程序的运行效率。下面将介绍Python中多线程计算的几种常见方法,并给出具体的示例代码。方法一:使用标准库threadingPython标准库中提供了threading模块,通过创建Thread......
  • react-native 在ios中使用react-native-vector-icons图标
    github地址:https://github.com/oblador/react-native-vector-icons1.引入npminstall--savereact-native-vector-iconsios项目引入进入node_modules/react-native-vector-icons文件夹,将Fonts文件夹拖拽到Xcode的项目根目录下,然后在Info.plist文件中添加如下内容:<key>U......
  • 使用Github+PicGo+JsDelivr搭建图床
    本文主要记录使用PicGo+Github搭建图床,并使用jsDelivrCDN加速;下载安装PicGo#安装包下载地址https://github.com/Molunerfinn/PicGo/releases#官方文档地址https://picgo.github.io/从github上选择稳定版本进行下载,我这里因为使用的是M1芯片的Mac,故选择的是Pi......
  • 如何理解十二要素方法论
    本文翻译自HowToUnderstandTwelve-FactorMethodologyInSpringBootApplications,原作者:OLEKSII。十二要素应用程序是构建现代可扩展应用程序架构所需的一系列原则。本篇文章将从SpringBoot应用的角度回顾这些原则。一、代码库应用程序在版本控制系统(如Git)中进......