首页
社区
课程
招聘
[求助]x64跨进程调用NtCreateThreadEx问题!
发表于: 2014-8-2 21:35 6644

[求助]x64跨进程调用NtCreateThreadEx问题!

2014-8-2 21:35
6644
HMODULE myhm=GetModuleHandle(TEXT("ntdll.dll"));
                TRACE("ntdll.dll模块地址=%x \n",myhm);
                pFunc = GetProcAddress(myhm,"ZwCreateThreadEx");  
                TRACE("NtCreateThreadEx指针=%x \n",pFunc);
                if( pFunc == NULL )  
                {  
                        TRACE("NtCreateThreadEx 调用失败!错误代码: [%d]/n", GetLastError());  
                        return FALSE;  
                }  
                ((PFNTCREATETHREADEX)pFunc)(
                        &hThread,
                        0x1FFFFF,  
                        NULL,  
                        hProcess,  
                        pThreadProc,  
                        pRemoteBuf,  
                        FALSE,  
                        NULL,  
                        NULL,  
                        NULL,  
                        NULL);  

周样代码 在win7 32位下能正常跨进程卸载Dll 为什么在64位下会提示如下错误呢!

ntdll.dll模块地址=779a0000
NtCreateThreadEx指针=779c08a4
MyCreateRemoteThread() : NtCreateThreadEx() 调用失败!错误代码: [1300]/n

WIN7 x64 下用OD看了有两个ntdll.dll 会不会是要调用32位的对应32位程序? 菜鸟求大神解说!

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 14
活跃值: (305)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
这个得看源进程和目标进程是否都是32位或者都是64位的,如果源和目的不一样是不能进行远程代码执行的。
2014-8-7 23:45
0
游客
登录 | 注册 方可回帖
返回
//