Windows 직렬 포트에서 읽으려면 Win32 ReadFile을 호출합니다. 내 장치가 연결되어 있지 않으면 ReadFile은 여전히 성공을 반환합니다. 기기와의 연결이 끊어 졌는지 어떻게 확인할 수 있습니까? 메시지를 보내고 응답을받지 못하거나 장치 이벤트를 청취하여이 작업을 수행 할 수 있지만 더 직접적인 방법이 있습니까?Windows에서 장치 플러그가 뽑혀 기존 직렬 연결이 끊어 졌는지 감지
0
A
답변
2
시리얼 포트는 뭔가가 있거나 시리얼 포트에 꽂혀 있지 않을 때 장치가 독립적으로 알 수있는 방법이 없다는 점에서 바보입니다. 이 때문에 직렬 포트를 사용하는 대부분의 장치는 어떤 종류의 통신 프로토콜을 지원하므로 어떤 것이 연결되었는지 여부를 결정할 수 있습니다.
0
언어에 따라 직렬 장치에서 장치 변경 이벤트가 발생하고 테스트 할 순간이 없다고 확신하지 않습니다. PNP 그것을 데리러 경우
그러나 나는 반 더 추가하거나 시스템에서 제거 된 것을 수정하면 거기에서 WmiCode 작성자Imports System
Imports System.Management
Imports System.Windows.Forms
Namespace WMISample
Public Class WMIReceiveEvent
Public Overloads Shared Function Main() As Integer
Try
Dim query As New WqlEventQuery(_
"SELECT * FROM Win32_DeviceChangeEvent")
Dim watcher As New ManagementEventWatcher(query)
Console.WriteLine("Waiting for an event...")
Dim eventObj As ManagementBaseObject = watcher.WaitForNextEvent()
Console.WriteLine("{0} event occurred.", eventObj("__CLASS"))
' Cancel the event subscription
watcher.Stop()
Return 0
Catch err As ManagementException
MessageBox.Show("An error occurred while trying to receive an event: " & err.Message)
End Try
End Function
End Class
End Namespace
에서
을 시도 할 것입니다. 그러나 장치가 연결되어 있지 않은 상태에서 컴퓨터가 부팅되었을 수도 있습니다.어느 쪽이든 나는 적절한 통신 오류 전달이 필수적이라고 모든 통신 프로토콜에서 제안합니다. 연결된 것과 쓰는 것을 확인하는 사이에 소켓이 단절되었다는 것을 보장 할 수 없다는 것과 비슷합니다.
관련 문제
- 1. IP 주소로의 연결이 끊어 졌는지 확인하십시오.
- 2. GWT에서 연결이 끊어 졌는지 확인하는 방법
- 3. 클라이언트의 인터넷 연결이 끊어 졌는지 어떻게 알 수 있습니까?
- 4. select()없이 C에서 소켓 연결이 끊어 졌는지 확인
- 5. TCP 연결을 쓰지 않고 연결이 끊어 졌는지 확인할 수 있습니까?
- 6. 주변 장치에서 중앙에서 연결이 끊어 졌는지 여부를 알 수 있습니다.
- 7. 연결이 이루어 졌는지 감지합니다.
- 8. node.js http 서버, 클라이언트 연결이 끊어 졌을 때 감지
- 9. SSIS - 연결이 끊어 질 때
- 10. 연결이 끊어 지거나 연결된 아키텍처
- 11. 네트워크 케이블의 플러그가 빠져 있는지 어떻게 알 수 있습니까?
- 12. jQuery - 버튼이 눌려 졌는지 감지
- 13. Indy 9 소켓 연결이 실제로 끊어 졌는지 확인하는 방법이 있습니까 (Delphi 6 응용 프로그램)?
- 14. Remote-Server가 Remote Control Java 코드에서 연결이 끊어 졌는지 확인하는 방법
- 15. Windows에서 Java 직렬 통신
- 16. Windows에서 직렬 포트 프로그래밍
- 17. PhoneGap/iOS의 초점이 끊어져서 연결이 끊어 졌습니까?
- 18. TCP 연결이 끊어 질 때 오류가 발생합니다.
- 19. 소켓 연결이 끊어 졌다는 오류 코드는 무엇입니까?
- 20. XCode : 전 처리기 연결이 끊어 졌습니까?
- 21. Xcode와 MonoDevelop 간의 연결이 끊어 졌습니까?
- 22. PDO가 for 루프 내에서 연결이 끊어 졌습니까?
- 23. iPhone 및 SQLite - 데이터베이스 연결이 끊어 졌습니까?
- 24. FileSystemWatcher 및 네트워크 연결이 끊어 졌습니까?
- 25. C#/Java 소켓 연결이 끊어 졌습니까?
- 26. 전화 통화가 시작되지만 연결이 끊어 졌습니까?
- 27. 세션 연결이 끊어 질 때 지연로드가 실패합니다.
- 28. 클라이언트 연결이 끊어 졌을 때 요청 취소하기
- 29. 첨부 된 오디오 장치 감지 iOS
- 30. 알 수있는 방법 소켓 클라이언트의 연결이 끊어 졌습니까?
DSR 하드웨어 신호를 확인하십시오. –