首页
社区
课程
招聘
NtSetInformationThread
发表于: 2008-3-30 20:22 10825

NtSetInformationThread

2008-3-30 20:22
10825
mov eax,0e5
lea edx,[esp+4]
int 2eh

edx是0012F754
0012F754: FFFFFFFE     
0012F758:11   
0012F75c:0      
0012F760:0
查到  e5对应的nt函数是NtSetInformationThread
NtSetInformationThread(
        IN HANDLE ThreadHandle,
        IN THREADINFOCLASS ThreadInformationClass,
        IN PVOID ThreadInformation,
        IN ULONG ThreadInformationLength
        );

请问 NtSetInformationThread 的参数是什么?

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

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
IN HANDLE ThreadHandle,
  IN THREADINFOCLASS ThreadInformationClass,
  IN PVOID ThreadInformation,
  IN ULONG ThreadInformationLength
这4个不是吗。。。。
2008-3-30 20:38
0
雪    币: 181
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
ThreadHandle==FFFFFFFE
ThreadInformationClass==11
ThreadInformation==0
ThreadInformationLength==0

这样?
线程句柄可以为 负数吗?
2008-3-30 20:48
0
雪    币: 6075
活跃值: (2236)
能力值: (RANK:1060 )
在线值:
发帖
回帖
粉丝
4
7C8098EB >  6A FE           push    -2                               ; GetCurrentThread
7C8098ED    58              pop     eax
7C8098EE    C3              retn
2008-3-30 21:14
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
#define NtCurrentThread() ((HANDLE)(LONG_PTR)-2)
2008-3-30 21:23
0
雪    币: 181
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
#define NtCurrentThread() ((HANDLE)(LONG_PTR)-2)
是什么意思啊

-2  是表示当前线程?
2008-3-30 21:57
0
雪    币: 321
活跃值: (271)
能力值: ( LV13,RANK:1050 )
在线值:
发帖
回帖
粉丝
7
这是个假的句柄,仅仅用来代表当前线程,还有当前进程用-1表示。
GetCurrentProcess 返回值是-1. GetCurrentThread返回值是-2.
具体可以看看msdn中关于这两个函数的说明。这两个常数仅仅是代表当前的进程和线程,如果要获得当前进程和线程真实的句柄,可以使用DuplicateHandle 得到,用完后须调用CloseHandle将其关闭。
2008-3-30 22:25
0
雪    币: 181
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
感谢  基本明白了  能介绍下 后面3个参数的具体意义吗
2008-3-30 23:29
0
游客
登录 | 注册 方可回帖
返回
//