문제

나는 직렬 포트와 대화하는 앱을 작업하고 있으며 개발 기계에서 Vista를 실행하고 있으며 직렬 포트는 Bluetooth 연결입니다. 때때로, 직렬 포트는 내 앱이 더 이상 연결할 수없는 상태에서 잡히게됩니다. .NET에서 "요소를 찾을 수 없음"을 읽는 메시지와 함께 ioException을 얻습니다.

다른 앱 (Hyperterm과 같은 커뮤니케이션 클라이언트)과 연결하여 앱을 다시 시작하려고 시도했지만 아무것도 도움이되지 않습니다. 더 구체적인 오류 메시지를 찾을 수 없으며 기계의 이벤트 로그에 아무것도 기록되지 않습니다. 장치 관리자는 포트가 "제대로 작동한다고"알려줍니다.

어떤 프로세스 및 또는 .dll이 직렬 포트를 소유하고/또는 포트를 닫은 강제를 찾을 수있는 방법이 있습니까?

차이가있는 경우 내 앱은 C#이지만 구조적으로 "사용"명령문으로 포트를 열고 닫는 것이 편리하지 않습니다.

고마워요, 앤디

도움이 되었습니까?

해결책

내가 아는 한, 당신은 손잡이가없는 직렬 포트를 닫을 수 없습니다. Bluetooth 직렬 포트에 대한 나의 경험은 연결 시간에 다른 COM 포트 번호에 매핑 될 수 있으며 때로는 연결이 끊어 졌을 때 가짜 COM 포트를 남길 수 있다는 것입니다. 예를 들어 현재 Bluetooth 장치가 연결되어 있지 않지만 장치 관리자로 들어가면 총 11 개의 COM 포트가 표시됩니다. 블루투스 직렬 포트 이 각 포트의 속성은 장치를 작동하고 사용할 수있는 것으로 표시하며, 때때로 실패 할 수 있지만 일반적 으로이 포트를 열 수 있습니다. 이것에 대한 나의 작업은 속성 / 고급 / COM 포트 번호. 문제가 드라이버 관련 (이 경우 IVT Corp)인지 또는 Windows가 Blutooth 직렬 포트를 관리하는 방식과 문제인지 확실하지 않습니다.

더 이상 도움이되지 않아서 죄송합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top