DEPENDS工具和DUMPBIN工具使用

阅读目录(Content)

  • 1.Depends
  • 2.DUMPBIN
    • 2.1 开启CMD
    • 2.2 移动目录到C:\Program Files (x86)\Microsoft Visual Studio\VC98\Bin
    • 2.3 运行命令:VCVARS32.BAT
    • 2.4 下面就可以调用dumpbin.exe命令了

  在系统部署运行时我们经常发现某个程序在开发机器中可以运行,但是部署在某台PC上缺不能运行,也存在在某些机器上可运行换一台机器却不能运行。主要表现出两种现象:

        (1)、运行、调试时出现程序启动时报错,提示出现错误无法启动。

       (2)、程序执行数据库查询语句时直接跳过,查询函数调用时断点也无法中断。并且无执行结果。

  其实出现这样的原因最主要是我们部署的程序缺少一些必要的运行库(注意库的版本,同样的库如果版本不一致也可能出现题)。

回到顶部(go to top)

1.Depends

  Depends用来显示与一个可执行文件(exe或者dll)相关的依赖项(dll),以及该exe或dll引用了这些dll中的哪些接口。同时也可以看到每个被依赖的dll中的所有导出的函数接口。

  该工具得到的是查看程序中隐式连接的Dll库,也就是用LIB关联的Dll模块,无法显示由显示连接的Dll模块,也就是用LoadLibrary函数导入的Dll函数。

回到顶部(go to top)

2.DUMPBIN

导出函数如下:
 1 // open_www.cpp : 定义控制台应用程序的入口点。2 #include <stdio.h>3 #include <stdlib.h>4 extern "C"_declspec (dllexport)int add(int a,int b)5 {6  return a+b;7 }8 int main(void)9 {
10  int c=0;
11  c=add(1,4);
12  printf("c=%d\n",c);
13  return 0;
14 }

2.1 开启CMD

2.2 移动目录到C:\Program Files (x86)\Microsoft Visual Studio\VC98\Bin

(DUMPBIN.EXE所在目录)

2.3 运行命令:VCVARS32.BAT

如果不运行vcvars32.bat会出现以下提示

2.4 下面就可以调用dumpbin.exe命令了

  如果导出函数前不加extern "C"

 /*extern "C"*/_declspec (dllexport)int add(int a,int b)

  则显示结果为:

来源:https://www.cnblogs.com/blueoverflow/p/4884744.html

转载于:https://www.cnblogs.com/fuhuo/p/11158869.html

depends用于测试程序运行所缺少的文件,可以帮我们很快找到问题相关推荐

  1. 应用软件运行提示缺少*.dll文件的解决方法

    在运行应用软件时可能会遇到各种情况,如在打开软件的执行程序时提示缺少*.dll的文件,导致应用程序无法正常运行,根据已解决的案列,可采用下载新的*.dll文件,然后再放置到应用程序的安装目录中,问题基 ...

  2. 40、使用javassit操作运行时字节码文件

    1.是什么 Javassit是一个功能包,作用类似于java的反射,用于操作运行时字节码文件,实现动态编程,但性能高于反射. 2.怎么用? 首先需要获取存放class文件的容器ClassPool,根据 ...

  3. Qt直接运行生成的exe文件提示“缺少Qt5Core.dll”的解决办法

    Qt直接运行生成的exe文件提示"缺少Qt5Core.dll"的解决办法 [错误描述] 在QtCreator下,程序可以正常运行,但是当关闭QtCreator后,在"de ...

  4. 执行exe报计算机中丢失qtdll,Qt入门教程(2) 直接运行Qt生成的exe报错缺少dll文件 | 阿拉灯...

    摘要 在Qt Creator中写完程序,在Qt Creator中的debug或者release状态下运行程序都是没有问题的,并且会在工程目录下生成对应的debug或者release文件夹,里面存放着生 ...

  5. 电脑计算机丢失很多东西怎么办,电脑缺少dll文件怎么办

    大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答. 电脑缺少dll文件的解决方法: 1.您可以用腾讯电脑管家修复下: 2.打开电脑管家――电脑诊所――软件问题――缺少dll文件. 计 ...

  6. halcon11用于C++的HTuple.h头文件,纯手添中文翻译!

    halcon11用于C++的HTuple.h头文件,纯手添中文翻译!乐于分享,请勿在非同意下转载! /************************************************* ...

  7. MongoDB 安装报错:无法启动此程序,缺少dll文件

    问题 在 Windows 环境下安装 MongoDB 时,提示无法启动此程序,因为计算机丢失 dll文件.尝试重新安装该程序以解决此问题. 原因 因为是新安装的操作系统,缺少dll(动态链接库)文件支 ...

  8. c++:dll缺少依赖文件的解决方法

    c++:dll缺少依赖文件的解决方法 在A电脑上编译的dll可以在A运行,但是到B就不能运行了, 多数情况下是因为dll依赖于一些文件,这些文件存在于A,但是不存在于B. 所以我们需要在A上找到dll ...

  9. 计算机丢失dll文件怎么弄,电脑缺少DLL文件该怎么办? 这个办法轻松解决!

    原标题:电脑缺少DLL文件该怎么办? 这个办法轻松解决! 电脑缺少****.文件,这种类似的提示我相信好多人都遇到过,不管是开机提示,还是打开应用提示,其实解决办法很简单的, 请看步骤. 安全卫士修复 ...

最新文章

  1. opencv播放器和摄像头视频播放
  2. Linux 操作系统原理 — 系统结构
  3. 重构之SqlHelper
  4. tableau prep builder也是不支持m1芯片。。。
  5. 代码创建 WPF 旋转动画
  6. VTK:vtkCursor3D用法实战
  7. shell配置,选择,环境变量修改(ORACLE_HOME,ORACLE_SID),无法使用sqlplus
  8. 第13步 用户模块前端(Admin)
  9. 【Python】Python实战从入门到精通之三 -- 教你使用Python中条件语句
  10. 定位20万个星系只需10秒!这款AI神器带你撩开宇宙面纱
  11. VC6在64位Windows7(家庭版或其他版本)下调试的时候,再结束调试,程序无法退出
  12. Element-UI学习笔记-安装
  13. java检索账号和密码_如何从数据库中检索密码
  14. 大学四年就靠这些东西成为别人眼中的大神(工具用好才是硬道理,兵来将挡,水来土掩)
  15. 自然语言处理系列五》新词发现与短语提取》短语提取
  16. 中国大学MOOC公开信息收集
  17. Typora文字变红
  18. 基于麒麟座开发板2.0的MQTT实现例程
  19. jsp脚本自学及总结
  20. 伯努利模型之买彩票问题

热门文章

  1. LOAD DATA INFILE句法
  2. 十、最大熵模型与EM算法
  3. python3(八)sys模块
  4. python集群_使用Python集群文档
  5. WordPress通过插件发送邮件
  6. sum of two integers
  7. java由大到小输出整数xvz_【视频+图文】Java经典基础练习题(三):输入3个整数,并将其由小到大输出...
  8. java和python混合编程_浅谈C++与Java混合编程
  9. 取pi的前8位的解压密码_两种方式实现取16位变量的高低8位, 不严谨对比
  10. 如何在mysql中添加用户_如何给mysql数据库添加一个用户