【问题标题】:Thread information block under x64x64下的线程信息块
【发布时间】:2012-07-19 15:41:17
【问题描述】:

我需要从 x64 平台上的 TIB 获取最大和最小堆栈(我知道我需要将 FS 寄存器替换为 GS 寄存器。) 在 x86 平台上,我可以使用 this table 并找到正确的偏移量
你知道我在哪里可以找到 x64 平台的表吗?

【问题讨论】:

    标签: windows assembly 64-bit windows-7-x64


    【解决方案1】:

    这是一个适用于 x86 和 x64 的程序。

    #include <windows.h>
    #include <stdio.h>
    
    void main()
    {
      PNT_TIB ptib = (PNT_TIB)NtCurrentTeb();
    #ifdef _AMD64_
      printf("Stack base: %08I64X, limit: %08I64X\n",
        ptib->StackBase, ptib->StackLimit);
    #else
      printf("Stack base: %08X, limit: %08X\n",
        ptib->StackBase, ptib->StackLimit);
    #endif
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-21
      • 1970-01-01
      • 2012-09-05
      • 2012-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多