DEPENDS工具和DUMPBIN工具使用

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

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

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

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

1.Depends

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

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

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)

  则显示结果为:

时间: 2024-10-27 12:21:01

DEPENDS工具和DUMPBIN工具使用的相关文章

VS2010中dumpbin工具的使用

用VS2010生成的.obj文件..lib库..dll库..exe执行文件,如果想查看其中这些文件或库包含了哪些函数以及相关的信息(符号清单),可以通过VS2010自带的dumpbin工具来完成. dumpbin.exe为Microsoft  COFF二进制文件转换器,它显示有关通用对象文件格式(COFF)二进制文件的信息.可用使用dumpbin检查COFF对象文件.标准COFF对象库.可执行文件和动态链接库等. dumpbin工具只能在命令行下使用. 双击C:\Program Files (x

Dumpbin 工具

1. 打开命令行工具 开始-> 所有程序-> Microsoft Visual Studio 2012-> Visual Studio Tools->VS2012 开发人员命令提示 2.使用dumpbin工具 示例: dumpbin -exports  C:\WRMP_BthTransLayer_Win32.lib dumpbin -exports  C:\WINDOWS\system32\apphelp.dll 文件名可以直接用拖的. 参考连接: http://blog.csdn

多功能网页刷新工具,刷pv工具

多功能网页刷新工具,刷pv工具,在线刷流量,刷PV,刷UV小牛刷新助手功能介绍:1.设置多个刷新网页地址.2.设置刷新时间3.开始工作4.其他操作:老板键:打开时自动刷新:置系统托盘5.可手动输入地址,可看当前刷新地址下载地址:点击下载

工业机器人_建立工具坐标和工具坐标

1.新建一个空的工作站 2.添加一个机器人和一个工具 3.将工具安装到机器人上 4.在添加一个工件 移动到合适的位置 5.新建一个系统,将自己已有的系统添加进来. 6.打开示教器 7.添加一个模块和四个例行程序(home点.初始化.主函数.路径) 8.添加一个工具坐标和工件坐标在刚刚新建的模块里 同上建多一个工件坐标 修改焊枪的更改值和定义 对准一个点,但是姿态不同的四个点(且第四个点要垂直) 同上 同上,定工件坐标的xyz就ok了

Android高手速成--第四部分 开发工具及测试工具

第四部分 开发工具及测试工具 主要介绍和Android开发工具和测试工具相关的开源项目. 一.开发效率工具 Json2Java根据JSon数据自动生成对应的Java实体类,还支持Parcel.Gson Annotations对应代码自动生成.期待后续的提取父类以及多url构建整个工程的功能项目地址:https://github.com/jonfhancock/JsonToJava在线演示:http://jsontojava.appspot.com/ IntelliJ Plugin for And

Android 开发工具及测试工具 汇总

注明:  转自 外部网站 http://www.tuicool.com/articles/EFBjequ 主要介绍和Android开发工具和测试工具相关的开源项目.  Json2Java 根据JSon数据自动生成对应的Java实体类,还支持Parcel.Gson Annotations对应代码自动生成.期待后续的提取父类以及多url构建整个工程的功能 项目地址: https://github.com/jonfhancock/JsonToJava 在线演示: http://jsontojava.a

Android 开源项目android-open-project开发工具及测试工具解析 开发效率工具,开发自测相关,测试工具,开发及编译环境,其他

主要介绍和Android开发工具和测试工具相关的开源项目. 一.开发效率工具 Parceler 通过注解及工具类自动完成实体类 Parcelable及值传递 项目地址:https://github.com/johncarl81/parceler Json2Java 根据JSon数据自动生成对应的Java实体类,还支持Parcel.Gson Annotations对应代码自动生成.期待后续的提取父类以及多url构建整个工程的功能 项目地址:https://github.com/jonfhancoc

安装软件包的三种方法 rpm包介绍 rpm工具用法 yum工具用法 yum搭建本地仓库(

三种方法:rpm,yum,源码包 安装rpm包 [[email protected] Packages]# rpm -ivh zsh-5.0.2-7.el7.x86_64.rpm准备中... ################################# [100%]正在升级/安装... 1:zsh-5.0.2-7.el7 ################################# [100%] 升级rpm包 [[email protected] Packages]# rpm -Uv

GNU开发工具——WireShark网络分析工具

GNU开发工具--WireShark网络分析工具 一.WireShark网络分析工具简介 1.WireShark简介 Wireshark是目前全球使用最广泛的开源网络封包分析软件(前身为Ethereal),由Gerald Combs编写并于1998年以GPL开源许可证发布.网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料. 2.WireShark架构 GUI:处理所有的用户输入输出(所有窗体,对话框等)Core:核心模块,通过函数调用将其他模块连接在一起Epan:包分析