![]() |
1
10
这是一个原因。我觉得这是比较平常的一个。 另一种是用于具有可变长度数据的结构。 我不认为在调用者中检查正确的包装或错误是背后的一个特殊的推理,但它会有这样的效果。 |
![]() |
2
11
它用于版本控制。一个很好的例子是 GetVersionEx 打电话。你可以通过 OSVERSIONINFO 或 OSVERSIONINFOEX . OSVersionInfoEx是OSVersionInfo的一个超集,而操作系统知道您传递了哪些信息的唯一方法是由dwosVersionInfoSize成员传递。 |
![]() |
3
2
它也让 Win32 API 对传入的数据进行最小程度的健全性检查。 例如,一个常见的错误是 Win32 要传入的结构 不正确的 或 未初始化的 CBSIZE 当这种情况发生时, Win32 API 通常只返回一个失败的结果,而不是尝试处理似乎已损坏的数据。 |
![]() |
4
0
部分版本控制,主要是安全性…以防止被调用函数戳入不是传入结构的一部分的内存。 |
|
vini · 安装wfp内核驱动程序后,devcon状态返回39 3 年前 |
![]() |
I101I · 如何镜像HBITMAP 3 年前 |
![]() |
E235 · 如何查看谁创建了Windows NamedPipe 3 年前 |
![]() |
Pizza Ãcke · 创建带有内存映像的Windows托盘图标 3 年前 |
![]() |
Jabu · 如何获取列表框滚动条“拇指”的高度? 3 年前 |
![]() |
tree1234 · 对可执行文件进行代码设计,并允许修改某些字节 3 年前 |
![]() |
Penachia · PDF FontDescriptor标志 7 年前 |