-
-
[旧帖] [求助]在内核里面结束一条线程要怎么处理呢? 0.00雪花
-
发表于: 2015-7-25 23:40 1304
-
在 应用层 跨进程结束线程
只是使用TerminateThread 就可以了
但是不知道为何 在 内核层 调用 NtTerminateThread 总是结束不了 线程(用户态线程)
使用 PsSuspendThread 函数 可以正常暂停 这个线程
PsSuspendThread(pInfo->Thread[j].ThreadObjcet, NULL);
使用 NtTerminateThread 函数 暂停线程 总是无效
NtTerminateThread(ThreadHandle, 0);
ThreadHandle 的来源是 NtCreateThreadIndex 的第一个参数
还有一个问题 就是 od 的 恢复线程功能 , 是如何实现的? 为何 不走内核的NtResumeThread ?
只是使用TerminateThread 就可以了
但是不知道为何 在 内核层 调用 NtTerminateThread 总是结束不了 线程(用户态线程)
使用 PsSuspendThread 函数 可以正常暂停 这个线程
PsSuspendThread(pInfo->Thread[j].ThreadObjcet, NULL);
使用 NtTerminateThread 函数 暂停线程 总是无效
NtTerminateThread(ThreadHandle, 0);
ThreadHandle 的来源是 NtCreateThreadIndex 的第一个参数
还有一个问题 就是 od 的 恢复线程功能 , 是如何实现的? 为何 不走内核的NtResumeThread ?
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
赞赏
看原图
赞赏
雪币:
留言: