gpt4 book ai didi

c++ - 断开/连接设备时 WM_DEVICECHANGE 出现两次

转载 作者:行者123 更新时间:2023-11-27 23:53:48 31 4
gpt4 key购买 nike

我在我的消息循环中监听 WM_DEVICECHANGE,当我移除或插入我的网络摄像头时,WM_DEVICECHANGE 出现两次,具有相同的 MSG(具有相同的 HWND、UINT、WPARAM 和 LPARAM)。如何解决?

最佳答案

这是意料之中的。尽管 wParam 和 lParam 应该不同以指示设备状态更改的不同阶段,但知道有重复的消息我不会感到惊讶。

如果我没记错的话,我们在代码中所做的是当我们收到 WM_DEVICECHANGE 事件时执行以下任一操作:

  1. 第一个通知进入后,在接下来的几秒钟内忽略所有后续通知。

  2. 或者只是使用 WM_DEVICECHANGE 作为提示而不是真相。当我们收到这样的消息时,我们将使用适当的 API 重新枚举设备列表,看看自上次枚举以来是否有任何变化。如果新列表与原始列表相同,则无需执行任何操作。

关于c++ - 断开/连接设备时 WM_DEVICECHANGE 出现两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44183743/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com