1. 程式人生 > >C# USB轉串列埠突然拔出檢測解決方案(二)

C# USB轉串列埠突然拔出檢測解決方案(二)

    用異常的方法來解決這個問題,首先還是捕獲USB裝置的拔出訊息,由於.NET並不知道串列埠的拔出,要是該串列埠正在使用,這是對串列埠的訪問將會產生異常,所以通過捕獲異常來處理是最好有方便的。程式碼如下:

  protected override void WndProc(ref Message m)
        {
            if (m.Msg == 0x0219)
            {//裝置被拔出
                if (m.WParam.ToInt32() == 0x8004)//usb串列埠拔出
                {
                    if (對串列埠進行操作)
                    {//產生異常
                          關閉串列埠
                    }
                }
            }
            base.WndProc(ref m);
        }