与Windows API一样,size字段用于结构版本控制.未来版本的Windows可以为更大的结构提供更多信息的附加信息,以便了解新功能而不会破坏与旧应用程序的二进制兼容性.
还有一个更有趣的用例:当前的Windows版本允许32位和64位进程在同一台机器上共存.每个进程都获得具有正确数据类型大小和API的API,但是如果64位进程(例如,调试器)想要弄乱32位进程的内存页面或反之亦然会发生什么?在这种情况下,它不能使用"常规"MEMORY_BASIC_INFORMATION结构 - 这是适合其"位数"的结构的别名,但必须使用适合目标进程的版本(参见此处,页面底部).在这种情况下,VirtualQueryEx可以使用大小信息来检查调用者是否提供了正确的结构,并提供错误而不是写入错误的内存.
| 归档时间: |
|
| 查看次数: |
256 次 |
| 最近记录: |