关于USB口的插拔检测解决办法

关于USB口的插拔检测
写一段关于USB口的插拔检测时 遇到一个问题 代码是

void __fastcall TForm1::OnDeviceChange(TMessage Message){
    PDEV_BROADCAST_HDR pHdr = (PDEV_BROADCAST_HDR)Message.LParam;
    GUID myGuid=GUID_DEVINTERFACE_MYSTM32USB;    //设备接口类GUID  在intrface.h文件中定义
    PDEV_BROADCAST_DEVICEINTERFACE pDevInf;
        if((DBT_DEVICEREMOVECOMPLETE==Message.WParam)||(DBT_DEVICEARRIVAL==Message.WParam))
        {
                switch(pHdr->dbch_devicetype)
                {
                    case DBT_DEVTYP_DEVICEINTERFACE:
                        pDevInf = (PDEV_BROADCAST_DEVICEINTERFACE)pHdr;
                        if(pDevInf->dbcc_classguid==myGuid)//判断拔出设备的设备接口类和usb2can设备
                                                            //的设备接口类是否一致
                        {
                                switch(Message.WParam)
                            {
                                case DBT_DEVICEREMOVECOMPLETE:
                                    Timer1->Enabled=false;
                                    Label1->Caption=Communication_State[0];
                                    Application->MessageBox("设备连接断开!请检查设备接线是否正确","警告信息",MB_OK);
                                    break;
                                case DBT_DEVICEARRIVAL:
                                    Application->MessageBox("检测到设备接入!","提示信息",MB_OK);
                                    HWInitial();
                                    FlushFIFO();
                                    ccp.ccpConnect();
                                    Label1->Caption=Communication_State[1];
                                    break;
                                default:break;
                            }
                      }

                        break;
                    case DBT_DEVTYP_HANDLE:
                        //Edit4->Text="HANDLE";
                        break;
                    case DBT_DEVTYP_OEM:
                        //Edit4->Text="OEM";
                        break;
                    case DBT_DEVTYP_PORT:
                        //Edit4->Text="PORT";
                        break;
                    case DBT_DEVTYP_VOLUME:
                       //Edit4->Text="VOLUME";  //U盘拔出响应
                        break;
                }
        }
}

运行后,插拔USB设备时,没有弹出窗,经检测是程序没有进入 if((DBT_DEVICEREMOVECOMPLETE==Message.WParam)||(DBT_DEVICEARRIVAL==Message.WParam)) 循环;请问是什么原因?
------解决思路----------------------
在if这一行加个断点,看看Message.WParam的值是多少。