2010-05-17 5 views
1

Windows CE 용으로 프로그래밍 중이므로 스캐너에 연결해야합니다. 아무 문제가 없다 - 나는 그것이 포트 COM0에있는 것을 알고,하지만 난 다른 장치에 연결하면 이전이 쉬운 방법은 모든 COM 포트를 얻을 수 ... 다른 COM 포트를 가져옵니다COM 포트 - 장치 식별 방법 (.net/C#)

SerialPort.GetPortNames() 

하지만 돈 장치를 식별하는 방법을 알고 있습니까? 표준 방법이 있습니까? 데이터를 전송하는 장치가 하나 뿐이므로 데이터를 항상 ping 할 수는 없으며 장치에 '핑 (ping)'하는 방법을 모릅니다 ...

답변

4

직렬 연결 문제는 이며 상태 비 저장입니다. 다른 쪽에서 듣고 있거나 듣고있는 사람이 있는지 알 수 없습니다.

는 몇 가지 선택이있다이를 찾으려면 누군가가 가능한 경우 (RTS, CTS 등 같은) 하드웨어 핸드 셰이크를 사용하는있는 경우

  • 은 확인하려면.
  • 는 일반적으로 당신이 AT을 보내드립니다 어떤 종류의 모뎀에 올바른 답을 알고 메시지 (예를 식별 보낼 사람이 찾으려면 당신은 OK을 받게됩니다. 그래서

당신이 경우 위의 방법 중 하나를 사용할 수 없으므로 사용할 포트를 자동으로 감지 할 수 없습니다. 따라서 유일한 작업 모델은 사용자에게 올바른 설정을 요청하는 것입니다 (예 : 사용 가능한 포트가있는 ComboBox 또는 BaudRates, 다른 부울 구성 설정 등)

+0

USB를 통해 어떤 값을 추가합니까? – argh

+0

아니요, 결국 시스템의 다른 직렬 포트로 표시됩니다. 아마도 장치 관리자를 통해 컴퓨터의 모든 장치를 열거하고 DeviceID 또는 그와 유사한 내용을 확인하도록 요청할 수있는 것이 있지만이 수준의 소프트웨어에 대해서는 잘 모릅니다. – Oliver