原文地址:http://www.cnblogs.com/AndyHai/archive/2007/07/25/830224.html有同学向我问这个问题,于是就Google了一下找到答案,不过是C下的,我将其改编成了C#的。
当设备被插入/拔出的时候,WINDOWS会向每个窗体发送WM_DEVICECHANGE 消息,当消息的wParam 值等于 DBT_DEVICEARRIVAL 时,表示Media设备被插入并且已经可用;如果wParam值等于DBT_DEVICEREMOVECOMPLETE,表示Media设备已经被移出。
它们的lParam都指向一个 DEV_BROADCAST_HDR结构体,其原形如下: