!BCB编写获取USB接口信息
求助!!BCB编写获取USB接口信息
[color=#3366FF]以前老师在讲C++时从来没有过系统的数据采集,现在要我们做一个数据采集的例子。
具体是用BCB 6.0平台编写一个可以检测是否有U盘接入计算机,并且可以把U盘中的文件一个一个的读取现实出来的程序。
请各位前辈多多指教。有程序附上我更是感激不尽!
先谢谢各位![/color]
------解决方案--------------------
U盘插入系统会发生WM_DEVICECHANGE消息,接到这个消息后检测U盘
------解决方案--------------------
这是我以前做的代码框架,这个代码你可以参考一下
[color=#3366FF]以前老师在讲C++时从来没有过系统的数据采集,现在要我们做一个数据采集的例子。
具体是用BCB 6.0平台编写一个可以检测是否有U盘接入计算机,并且可以把U盘中的文件一个一个的读取现实出来的程序。
请各位前辈多多指教。有程序附上我更是感激不尽!
先谢谢各位![/color]
------解决方案--------------------
U盘插入系统会发生WM_DEVICECHANGE消息,接到这个消息后检测U盘
------解决方案--------------------
这是我以前做的代码框架,这个代码你可以参考一下
- C/C++ code
//--------------------------------------- void __fastcall TForm1::WndProc(TMessage& Message) { if(Message.Msg == WM_DEVICECHANGE) //帮助里面有这个消息的详细说明 { switch(Message.WParam) { case DBT_DEVICEARRIVAL: { PDEV_BROADCAST_VOLUME dbvDev = (DEV_BROADCAST_VOLUME *)Message.LParam; //U盘插入 if(dbvDev->dbcv_flags == 0) { } break; } case DBT_DEVICEQUERYREMOVE: { } break; case DBT_DEVICEQUERYREMOVEFAILED: { } break; case DBT_DEVICEREMOVEPENDING: { } break; case DBT_DEVICEREMOVECOMPLETE: { PDEV_BROADCAST_VOLUME dbvDev = (DEV_BROADCAST_VOLUME *)Message.LParam; if(dbvDev->dbcv_flags == 0) { //警告U盘拔出! } } break; default: { //未知USB设备消息; } break; } } TForm::WndProc(Message); //最后别忘了把其他消息交给默认窗口函数处理 }