社区
新手乐园
帖子详情
请问如何调试lib文件的代码
CescSkye
2011-06-10 03:10:34
我的程序中调用一个别人写的lib文件,此lib的源代码已经搞到了 希望能调试一下 不知如何设置 就是从自己这份代码跳到那份lib代码中的相应调用的函数中去
...全文
861
11
打赏
收藏
请问如何调试lib文件的代码
我的程序中调用一个别人写的lib文件,此lib的源代码已经搞到了 希望能调试一下 不知如何设置 就是从自己这份代码跳到那份lib代码中的相应调用的函数中去
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
CescSkye
2011-06-10
打赏
举报
回复
哦~~~o了~~ 谢各位了
ryfdizuo
2011-06-10
打赏
举报
回复
[Quote=引用 8 楼 dingdingweiwei 的回复:]
引用 5 楼 dingdingweiwei 的回复:
引用 2 楼 dizuo 的回复:
引用楼主 dingdingweiwei 的回复:
我的程序中调用一个别人写的lib文件,此lib的源代码已经搞到了 希望能调试一下 不知如何设置 就是从自己这份代码跳到那份lib代码中的相应调用的函数中去
需要把lib的gdb文件拷到当前工程目录下,
请问gdb是什么东东
我……
[/Quote]
右键 把当前工程 设为启动项目。
就想叫yoko
2011-06-10
打赏
举报
回复
比如说你是一个exe调这个lib
你把lib 的project和exe添加到一个solution中
然后EXE单步调就能进去了
pdb文件要考过去
或者你用你的lib attach到exe那个进程上去
CescSkye
2011-06-10
打赏
举报
回复
[Quote=引用 5 楼 dingdingweiwei 的回复:]
引用 2 楼 dizuo 的回复:
引用楼主 dingdingweiwei 的回复:
我的程序中调用一个别人写的lib文件,此lib的源代码已经搞到了 希望能调试一下 不知如何设置 就是从自己这份代码跳到那份lib代码中的相应调用的函数中去
需要把lib的gdb文件拷到当前工程目录下,
请问gdb是什么东东
[/Quote]
我把整个工程加到了解决方案里之后 我自己的函数体都进不去了 请问这是怎么回事 我用的VS2010
CescSkye
2011-06-10
打赏
举报
回复
[Quote=引用 6 楼 dizuo 的回复:]
引用 5 楼 dingdingweiwei 的回复:
引用 2 楼 dizuo 的回复:
引用楼主 dingdingweiwei 的回复:
我的程序中调用一个别人写的lib文件,此lib的源代码已经搞到了 希望能调试一下 不知如何设置 就是从自己这份代码跳到那份lib代码中的相应调用的函数中去
需要把lib的gdb文件拷到当前工程目录下,
请问gdb是什么东东
你把……
[/Quote]
好 我试试
ryfdizuo
2011-06-10
打赏
举报
回复
[Quote=引用 5 楼 dingdingweiwei 的回复:]
引用 2 楼 dizuo 的回复:
引用楼主 dingdingweiwei 的回复:
我的程序中调用一个别人写的lib文件,此lib的源代码已经搞到了 希望能调试一下 不知如何设置 就是从自己这份代码跳到那份lib代码中的相应调用的函数中去
需要把lib的gdb文件拷到当前工程目录下,
请问gdb是什么东东
[/Quote]
你把lib库工程也添加到解决方案中。
CescSkye
2011-06-10
打赏
举报
回复
[Quote=引用 2 楼 dizuo 的回复:]
引用楼主 dingdingweiwei 的回复:
我的程序中调用一个别人写的lib文件,此lib的源代码已经搞到了 希望能调试一下 不知如何设置 就是从自己这份代码跳到那份lib代码中的相应调用的函数中去
需要把lib的gdb文件拷到当前工程目录下,
[/Quote]
请问gdb是什么东东
ryfdizuo
2011-06-10
打赏
举报
回复
[Quote=引用 2 楼 dizuo 的回复:]
引用楼主 dingdingweiwei 的回复:
我的程序中调用一个别人写的lib文件,此lib的源代码已经搞到了 希望能调试一下 不知如何设置 就是从自己这份代码跳到那份lib代码中的相应调用的函数中去
需要把lib的gdb文件拷到当前工程目录下,
[/Quote]
sorry,是pdb和idb后缀文件。
CescSkye
2011-06-10
打赏
举报
回复
[Quote=引用 1 楼 iambic 的回复:]
步进进不去吗?
[/Quote]
可以吗??? 从一份代码跳到另一份代码中去 我这是两个源程序 可以这样吗
ryfdizuo
2011-06-10
打赏
举报
回复
[Quote=引用楼主 dingdingweiwei 的回复:]
我的程序中调用一个别人写的lib文件,此lib的源代码已经搞到了 希望能调试一下 不知如何设置 就是从自己这份代码跳到那份lib代码中的相应调用的函数中去
[/Quote]
需要把lib的gdb文件拷到当前工程目录下,
iambic
2011-06-10
打赏
举报
回复
步进进不去吗?
调试
Lib
文件
无法进入源
代码
经过很多探索后 我是这样做的 1.把库的源
文件
,.vcproj
文件
添加到解决方案。 2.输入库,无论是#pragma,还是通过工程属性加入的
lib
文件
,都删掉不需要,改为工程依赖于
lib
工程。 这样就可以进入库
文件
进行
调试
。
lib
、dll
文件
的中函数的查看与
lib
、dll、pdb
文件
的介绍
lib
、dll、pdb的
文件
作用 (1)
lib
是编译时需要的,dll是运行时需要的。 如果要完成源
代码
的编译,有
lib
就够了。 如果也使动态连接的程序运行起来,有dll就够了。 在开发和
调试
阶段,当然最好都有。 (2)一般的动态库程序有
lib
文件
和dll
文件
。
lib
文件
是必须在编译期就连接到应用程序中的,而dll
文件
是运行期才会被调用的。如果有dll
文件
,那么对应的
lib
文件
一般是一些索引信息,具体的实现在dll
文件
中。如果只有
lib
文件
,那么这个
lib
文件
是静态编译出来的,索引和实现都在其中。静态编译的
LIB
文件
和DLL
文件
的作用
(1)
lib
是编译时需要的,dll是运行时需要的。如果要完成源
代码
的编译,有
lib
就够了。如果也使动态连接的程序运行起来,有dll就够了。在开发和
调试
阶段,当然最好都有。(2)一般的动态库程序有
lib
文件
和dll
文件
。
lib
文件
是必须在编译期就连接到应用程序中的,而dll
文件
是运行期才会被调用的。如果有dll
文件
,那么对应的
lib
文件
一般是一些索引信息,具体的实现在dll
文件
中。如果只有...
lib
静态库逆向分析
当我们要分析一个
lib
库里的
代码
时,首先需要判断这是一个静态库还是一个导入库。库类型判断
lib
文件
其实是一个压缩
文件
。我们可以直接使用7z打开
lib
文件
,以查看里面的内容。如果里面的内容是obj
文件
,表明是静态库。如果里面的内容是dll
文件
,表明是导入库。导入库里面是不包含
代码
的,
代码
包含在对应的dll
文件
中。从
lib
中提取obj 静态库是一个或者多个obj
文件
的打包,这里有两个方法从中提取obj:Microsoft 库管理器 7z解压 Microsoft 库管理器(
lib
.exe) Microsoft
在Visual Studio里利用pdb
文件
进入
lib
调试
方法
1. 基础知识 静态库和动态库 首先说一下,库的导出分为静态库和动态库。 导出静态库的话,会生成一个.
lib
文件
,其实就是.obj的集合,.obj又是.cpp编译得到的,所以,静态库里有函数的实现。不过这些实现是二进制的,是不带源码的。使用静态库的时候,需要链接.
lib
,包含.h。 导出动态库的话,会生成.dll
文件
和.
lib
文件
,动态库生成的.
lib
文件
会很小,因为这里的.
lib
只需要指明函数在.dll中的位置就可以了。使用的时候,需要把.dll和程序将要生成的.exe放在一个位置(双击exe运行),或
新手乐园
33,311
社区成员
41,784
社区内容
发帖
与我相关
我的任务
新手乐园
C/C++ 新手乐园
复制链接
扫一扫
分享
社区描述
C/C++ 新手乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章