博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
QTC++监控USB插拔
阅读量:5044 次
发布时间:2019-06-12

本文共 1869 字,大约阅读时间需要 6 分钟。

#if defined(Q_OS_WIN)#include 
#include
#include
#endifQByteArray *MainWindow::receivedData=new QByteArray();//接收到数据ThreadComPort *MainWindow::threadInitComPort=0;#if defined(Q_OS_WIN)static const GUID GUID_DEVINTERFACE_USBSTOR = { 0xA5DCBF10L, 0x6530, 0x11D2, { 0x90, 0x1F, 0x00, 0xC0, 0x4F, 0xB9, 0x51, 0xED } };static const GUID InterfaceClassGuid = GUID_DEVINTERFACE_USBSTOR;static bool isDoingSearch=false;static void SerachComPort(){ if(isDoingSearch==false){ isDoingSearch=true; bool hasDevice=false; QList
list= QSerialPortInfo::availablePorts(); for(int i=0;i
InitComPort(); } isDoingSearch=false; }}LRESULT CALLBACK dw_internal_proc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){ if (message == WM_DEVICECHANGE) { switch (wParam) { case DBT_DEVNODES_CHANGED: qDebug()<<"设备插拔啦."; Globals::parent->CloseComPort(); SerachComPort(); break; } } // qDebug()<<"HWND:"<
(className.utf16()); RegisterClass(&wc); HWND hwnd = CreateWindow(wc.lpszClassName, // classname wc.lpszClassName, // window name 0, // style 0, 0, 0, 0, // geometry 0, // parent 0, // menu handle hi, // application 0); // windows creation data. if (hwnd) { DEV_BROADCAST_DEVICEINTERFACE NotificationFilter ; ZeroMemory(&NotificationFilter, sizeof(NotificationFilter)) ; NotificationFilter.dbcc_size = sizeof(DEV_BROADCAST_DEVICEINTERFACE); NotificationFilter.dbcc_devicetype = DBT_DEVTYP_DEVICEINTERFACE; NotificationFilter.dbcc_classguid = InterfaceClassGuid; RegisterDeviceNotification(hwnd, &NotificationFilter, DEVICE_NOTIFY_WINDOW_HANDLE); } return hwnd; }#endif

  

转载于:https://www.cnblogs.com/HCCZX/p/4759845.html

你可能感兴趣的文章
Vim安装及配置
查看>>
奥东......C# Base Coding
查看>>
JavaScript中清空数组的三种方式
查看>>
HTML5学习
查看>>
cocos2dx翻牌效果示例
查看>>
SpringBoot系列: SpringBoot 启动慢的问题
查看>>
32位Windows7上8G内存使用感受+xp 32位下使用8G内存 (转)
查看>>
【转】Linux下nginx配置https协议访问的方法
查看>>
activemq集群搭建Demo
查看>>
zookeeper系列之通信模型(转)
查看>>
windows Phone 7如何实现background的情况下不丢失数据
查看>>
windowsphone 中文开源项目集合
查看>>
Unity3D:代码中改变Sprite
查看>>
代码生成器原理
查看>>
Exp3 免杀原理与实践
查看>>
[ZooKeeper] 1 基本概念
查看>>
面试整理:版本信息
查看>>
linux中通过lsof恢复删除的文件,前题是fd被占用。
查看>>
【插件开发】—— 6 SWT 复杂控件使用以及布局
查看>>
linux下Apache服务器使用入门----httpd.conf
查看>>