下你所需,载你所想!
汇集开发技术源码资料

32位进程可以像64进程一样接收线程8字节参数

:149.146KB :1 :2023-05-31 20:07:55

部分简介

这其实是一个困扰我许久的一个奇怪想法而引出的.
期初是因为在封装x64远程hook时希望64位进程可以向32位进程远程线程传递8字节参数.
当时似乎也没有发现关于此类问题的讨论或解决方案的产生.
大家似乎都默认了这件事情的合理性 是的它看上去的确是那么的合理。
我们知道 创建一条线程 可以有一个参数 这个参数 在不同的bit环境 拥有不同的长度
在x86 API中 它是4字节的,在x64 API中 它是8字节的,这看上去很合理本身它也没有什么问题
也就是说:
32位进程之间 创建线程 参数大小保持在4字节
64位进程之间 创建线程 参数大小保持在8字节
32位进程-->64位进程 创建线程 时 由于wow64虚拟环境的存在 这个时候可以分为两种情况了
1:32位进程使用x86API创建线程 由于bit受限 只能传递4字节参数
2:32位进程使用x64API创建线程 可以传递8字节参数。

32位进程可以像64进程一样接收线程8字节参数

热门推荐

相关文章