【问题标题】:Is "XM_CXSMICON" a misspelling of "SM_CXSMICON" in these MSDN pages?在这些 MSDN 页面中,“XM_CXSMICON”是“SM_CXSMICON”的拼写错误吗?
【发布时间】:2015-02-20 09:18:00
【问题描述】:

在本文底部链接的三篇 MSDN 文章中,提到了预处理器宏 XM_CXSMICON。在上下文中,它应该是 system metric 的索引,它给出通知托盘中的 small 图标或此类图标的气球弹出窗口的宽度.

这是一个引用,逐字逐句:

NIIF_LARGE_ICON (0x00000010) 0x00000010。 Windows Vista 及更高版本。大版本的图标应该用作通知气球中的图标。这对应于尺寸为 SM_CXICON x SM_CYICON 的图标。如果未设置此标志,则使用尺寸为 XM_CXSMICON x SM_CYSMICON 的图标。

该引用中的其他三个宏 SM_CXICONSM_CYICONSM_CYSMICON 都按预期在 user32.h 中定义,但 Windows API 中没有头文件定义 XM_CXSMICON。搜索 MSDN 只返回本文末尾链接的 hits,所有这些都与 notify-icons 相关。

有了这些证据,我得出结论,这是一个错误,而宏实际上是 SM_CXSMICON,它在 user32.h 中的 SM_CYSMICON 上方的行上定义。

谁能证实这个猜测或提供更多信息?

有问题的三篇 MSDN 文章:

  1. https://msdn.microsoft.com/en-us/library/windows/desktop/bb773352(v=vs.85).aspx
  2. https://msdn.microsoft.com/en-us/library/windows/desktop/bb774428(v=vs.85).aspx
  3. https://msdn.microsoft.com/en-us/library/windows/desktop/ee453691(v=vs.85).aspx

【问题讨论】:

  • 我刚刚注意到我在同一篇文章中重复了一个 second 错误! NIIF_LARGE_ICONshellapi.h 中定义,是 0x00000020,而不是 0x00000010,正如我引用的那段文字所述。

标签: winapi msdn errata


【解决方案1】:

是的,这是一个错字。它应该是SM_CXSMICON x SM_CYSMICON

【讨论】:

  • 问和回答。谢谢。
猜你喜欢
  • 1970-01-01
  • 2012-10-11
  • 1970-01-01
  • 2020-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-06
  • 2011-07-21
相关资源
最近更新 更多