原文地址: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結構體,其原形如下: