ㅊprotected override void WndProc(ref Message m)

            {

                UInt32 WM_DEVICECHANGE    = 0x0219;

                UInt32 DBT_DEVTUP_VOLUME = 0x02;

                UInt32 DBT_DEVICEARRIVAL = 0x8000;

    

                if ((m.Msg == WM_DEVICECHANGE) && (m.WParam.ToInt32() == DBT_DEVICEARRIVAL))

                {

                    MessageBox.Show("디바이스가 연결되었습니다.");

    

                    int m_Count = 0;

                    int devType = Marshal.ReadInt32(m.LParam, 4);

    

                    if (devType == DBT_DEVTUP_VOLUME)

                    {

                        MessageBox.Show("USB 장치가 연결 됨");

                    }

                    else

                    {

    

                        MessageBox.Show("USB to COM 장치가 연결 됨");

                        //단순하게 test하기 위해 젤 마지막 포트이름을 뿌려 봄

                        foreach (string str in SerialPort.GetPortNames())

                        {

                           

                               //........블러블러 COM으로 Device Chage 잡힐경우

                                MessageBox.Show("현재 연결된 디바이스 포트는 : " + str);

                       }

                   }//.....etc....

               }

               base.WndProc(ref m);

           }

신고

'Computer Engineering > C#' 카테고리의 다른 글

[C#] Effective c#을 읽고 정리  (0) 2011.01.11
[C#] 크로스쓰레드  (0) 2011.01.11
[C#] c#을 이용한 usb 연결, 연결해제 처리  (0) 2011.01.11
[C#] PC 종료 코드  (0) 2011.01.11
[C#] 메모리 Leak?  (0) 2011.01.11
[C#] DB exception 처리 정석?  (0) 2011.01.11

+ Recent posts

티스토리 툴바