能力值:
( LV12,RANK:300 )
|
-
-
2 楼
楼主应该看一看什么叫做“栈回溯”。当然栈回溯的结果也不一定准确。
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
b.dll的进程名不就是A.exe吗,什么意思得到B的进程名没听明白.
得A的进程名就用GetModuleFileName
得到B的地址也是GetModuleHandle
|
能力值:
( LV12,RANK:300 )
|
-
-
4 楼
我估计楼主的意思是得到B.dll的“模块名”和内存地址。
如果只是要知道自身进程名,那的确一个GetModuleFileName就搞定了,我只能理解为楼主不是这个意思。
至于b.dll的内存地址,楼主的意思应该是事先不知道b.dll的文件名,所以不能直接用GetModuleHandle
虽然楼主表述得很不规范,不过就我理解,楼主想要知道“是哪个dll里的函数调用了x函数”,事先不知道该dll的名字。
所以我建议他去看与“栈回溯”有关的内容。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
感觉亮了点!!
|
能力值:
(RANK:170 )
|
-
-
6 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
谢谢!!是我没有说清楚,我想得到模块名和调用的地址。因为事先并不知道那个模块调用了那个函数
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
哈,还是轩辕小聪的领悟力高啊,是我没表述清楚,说进程名有误,应该是模块名。
|
能力值:
( LV9,RANK:140 )
|
-
-
9 楼
偶没看明白,汗死
|
能力值:
( LV6,RANK:90 )
|
-
-
10 楼
一般是用CALL调用的话,看看堆栈的返回地址,然后根据返回地址往上找pe文件头,估计能找到.
|
能力值:
( LV4,RANK:50 )
|
-
-
11 楼
HMODULE WINAPI ModuleFromAddress(PVOID pv)
{
//pv---是栈地址
MEMORY_BASIC_INFORMATION mbi;
if(::VirtualQuery(pv, &mbi, sizeof(mbi)) != 0)
{
return (HMODULE)mbi.AllocationBase;
}
else
{
return NULL;
}
}
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
谢谢!!
你这个pv栈地址怎么取出来?
这样行吗?
PVOID addrs;
BOOL x(....)
{
__asm POP addrs;
__asm PUSH addrs;
HMODULE hMod=ModuleFromAddress(addrs);
...........................
...........................
}
这样可以吗?
|
能力值:
( LV4,RANK:50 )
|
-
-
13 楼
DWORD addrs;
__asm{
push dword ptr [ebp+8] //调试一下
pop dword ptr [addrs]
}
HMODULE hint1=ModuleFromAddress((PVOID)addrs);
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
[QUOTE=wyqzm;614938]DWORD addrs;
__asm{
push dword ptr [ebp+8] //调试一下
pop dword ptr [addrs]
}
HMODULE hint1=ModuleFromAddress((PVOID)addrs);[/QUOTE]
试了一下,不行
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
我也进来学习下,,,分享下
|
能力值:
( LV4,RANK:50 )
|
-
-
16 楼
1,你不要照搬
2,你的想法我用过,上面的代码不一定一样,只是我测试成功.
|
能力值:
( LV7,RANK:100 )
|
-
-
17 楼
真是无聊的问题。不外湖就是create process或者LoadLibrary的级别挂接问题。
|
能力值:
( LV2,RANK:10 )
|
-
-
18 楼
真是无聊吗?你真是奇怪啊,晕死了,你很牛啊,不给出指导就罢了,何必。。。。。。
我是菜鸟,目前的问题只有这样的解决办法,所以请大家指教了
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
DWORD addrs;
BOOL x(....)
{
__asm POP addrs;
__asm PUSH addrs;
HMODULE hMod=ModuleFromAddress((PVOID)addrs);
...........................
...........................
}
我终于用这个调试成功!!
|
|
|