本人小白,请问CONTEXT结构下的关于ContextFlags说明在哪看?
请教各位大佬、前辈:GetThreadContext()函数内参数二的CONTEXT结构里面有个ContextFlags,别人告诉我这个可以设为#CONTEXT_FULL,试了下确实可以取到寄存器的值。但我在MSDN里面找了半天也没看到关于这个ContextFlags的说明啊,似乎还能设为CONTEXT_ALL和CONTEXT_XSTATE。我就纳闷,别人是怎么知道的?我怎么就查不到官方说明啊?这个ContextFlags还能初始为CONTEXT_CONTROL
CONTEXT_INTEGER
CONTEXT_SEGMENTS 等
我就好奇这些东西是在哪地方写着的?上面这都是在别人的文章里看到的,我在MSDN里没找到啊...还是我找的方式不对? 查msdn,得到如下内容:
The CONTEXT structure is highly processor specific. Refer to the WinNT.h header file for processor-specific definitions of this structures and any alignment requirements.
用各种翻译软件得到如下解释:
CONTEXT结构是高度特定于处理器的。 有关此结构的特定于处理器的定义和任何对齐要求,请参阅 WinNT.h 头文件。
接着你就要在WinNT.h头文件中搜索关键词ContextFlags啦
搜索你会得到如下内容(仅截取部分):
ContextFlags word contians the flag CONTEXT_SEGMENTS....
ontextFlags word contians the flag CONTEXT_FLOATING_POINT....
ContextFlags word contians the flag CONTEXT_INTEGER....
ContextFlags word contians the flag CONTEXT_CONTROL....
#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_FLOATING_POINT | CONTEXT_INTEGER | CONTEXT_IA32_CONTROL) 在vs代码区域内把这个宏值写出来,F12可以转到宏值对应的阿拉伯数字,相关的宏也在一起,这种办法适用找别的api的宏,有些宏后面会有注释 vs帮助文档里面就有,不过这要你去百度搜索一下 A学习的小菜鸟 发表于 2022-9-11 09:40
vs帮助文档里面就有,不过这要你去百度搜索一下
谢谢各位,已经看到了。
页:
[1]