-
-
[旧帖] [求助]问一个加载基址的问题 0.00雪花
-
发表于: 2008-3-31 14:51 2894
-
有这样的代码
//test2.c
#include <stdio.h>
#include <windows.h>
__declspec(dllexport) void Demo()
{
......
}
main()
{
HMODULE hmod;
void (*z)();
hmod=LoadLibrary("test2.exe");
z=((void)(*)())GetProcAddress(hmod,"Demo");
z();
}
编译就是简单的:cl test2.c
在Kris Kaspersky的大作"Hacker Disassembling Uncovered"中说用softice调试时mod -u应该是可以看见test2加载了两份,有两个基址,但是我在win2000下用ds3.2中的softice调试的时候只看见了一份test2被加载了。
由于ds2.7和ds3.2都无法在xp下正常调试,为了看明白这本书我特意灭掉了XP装2000pro,还大翻箱子底找出尘封多年的vs98,以求根作者的环境一致,但是即使是这样,依然有些东西对不上。作者的环境是win2000,softice3.26,vc6.
还有现在大家都用什么调试软件,ds2.7在98下安不上,2000下又调试不了(用map32连加载的进程都找不到),就ds3.2还算能在2000下工作,该死的softice动不动就罢工,比如明明加载了一个程序,但是用d命令查看数据区的时候动不动就是一堆?,里面的字符串不知道去了什么地方,有的时候又能看见数据。
我都快郁闷死了。
//test2.c
#include <stdio.h>
#include <windows.h>
__declspec(dllexport) void Demo()
{
......
}
main()
{
HMODULE hmod;
void (*z)();
hmod=LoadLibrary("test2.exe");
z=((void)(*)())GetProcAddress(hmod,"Demo");
z();
}
编译就是简单的:cl test2.c
在Kris Kaspersky的大作"Hacker Disassembling Uncovered"中说用softice调试时mod -u应该是可以看见test2加载了两份,有两个基址,但是我在win2000下用ds3.2中的softice调试的时候只看见了一份test2被加载了。
由于ds2.7和ds3.2都无法在xp下正常调试,为了看明白这本书我特意灭掉了XP装2000pro,还大翻箱子底找出尘封多年的vs98,以求根作者的环境一致,但是即使是这样,依然有些东西对不上。作者的环境是win2000,softice3.26,vc6.
还有现在大家都用什么调试软件,ds2.7在98下安不上,2000下又调试不了(用map32连加载的进程都找不到),就ds3.2还算能在2000下工作,该死的softice动不动就罢工,比如明明加载了一个程序,但是用d命令查看数据区的时候动不动就是一堆?,里面的字符串不知道去了什么地方,有的时候又能看见数据。
我都快郁闷死了。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
赞赏
他的文章
- [求助]问一个加载基址的问题 2895
赞赏
雪币:
留言: