漫漫开发路 解密:WPARAM和LPARAM中的W和L分别代表什么意思
Windows消息的两个参数
曾经有那么一段时间 , Windows还是一个16位的操作系统 。
每一个Windows消息会携带两个参数 , 它们分别被叫做WPARAM和LPARAM 。 第一个参数是一个16位的数据(Word) , 所以它被称之为W 。
第二个参数是一个32位的数据(Long) , 所以它被称之为L 。
你可以使用W参数来传递诸如句柄和整数这一类的数据 , 对于指针数据来说 , 你可以使用L参数来传递它 。 当Windows被转换为32位版本之后 , WPARAM也从原来的16位迁移到了32位 , 所以 , 虽然WPARAM中的W代表Word , 但是它已经不再是一个16位的数据了 。 (甚至在64位操作系统中 , 这两个参数长度被进一步地扩展到了64位 。 )
了解这其中的历史故事还是有点用的 。 如果你仔细地观察一下Windows消息的设计 , 你会发现 , 如果消息中携带了某个指针信息 , 则这个指针通常会保存在消息的LPARAM参数中 , 如果携带的是一个句柄或者一个整数 , 则通常会使用WPARAM参数来保存 。
了解了这个原理 , 我们在记忆某个Windows消息的参数的时候就会显得容易一点 。 相反的 , 如果一个消息的参数违反了上述的惯例 , 则你可能会想:不对劲 , 这里可能有点问题 。
【漫漫开发路 解密:WPARAM和LPARAM中的W和L分别代表什么意思】总结
Windows的消息设计体现了通用性设计的精髓:如果你不能确定未来这个东西会是什么 , 那么 , 现在就不要清楚地定义它 。
文章图片
- 周到|深度 | 将因凡蒂诺拖下水的“足球解密”,是足球界的阿桑奇
- 侦查员|大案解密——20具无名女尸在荒野出现,牵出连环杀人案
- 电竞|腾讯游戏副总裁有话说:新文创战略成为领头羊,提前解密未来电竞
- 电脑使用技巧解密:WPARAM和LPARAM中的W和L分别代表什么意思
- 互联网如何直播带货?青岛国际创新区邀众专家现场“解密”
- 科技生活大侠 「专利解密」战疫助手!芯海科技片上数字温度传感器
- 废宅小编|《三十而已》︱林有有:小三路漫漫,且行且珍惜
- 九驾旧闻|什刹海:庄志存偷看晓晓的手机,破解密码,发现晓晓秘密
- 光明网|全国强降雨中心!安徽究竟下了多少雨?大数据解密历史最长梅雨季
- 盗墓|南派三叔空降斗鱼,解密《重启之盗贼之海》,新的奇幻旅程开始了