USB 확장 카드 또는 SD 카드 판독기의 존재 여부를 감지 할 수있는 C++ 프로그램을 작성하고 싶습니다. 플러그 인이 필요하지 않습니다. 이것이 가능한가? 리눅스에서?Linux에서 USB 확장 카드의 존재를 감지 할 수 있습니까?
2
A
답변
3
당신은 정확한 공급 업체 ID 및/또는 제품 ID가이처럼, 그것을 검색 할 수 있습니다 알고있는 경우 :
for (bus = busses; bus; bus = bus->next)
for (dev = bus->devices; dev; dev = dev->next)
if ((dev->descriptor.idVendor == vendor) && (dev->descriptor.idProduct == product))
return dev;
0
예, 당신이 얻을 수있는 dmesg
간단한에 의해 idVendor 및 idProduct을 . 그리고 지식을 가진 사람이 위에 표시된 검색 조건을 설정하십시오. 더 깊이 파고 싶으면 리눅스가있는 경우 <kernel_source>/drivers/usb/core
에 usb.h
을 탐색 할 수 있습니다. 구조가 있습니다 : struct usb_device{}
. 아직 더 탐구하고 싶다면 dmesg
다음에 USB 장치 세부 사항을 인쇄하는 announce_device()
과 같은 방법으로 driver.c
과 hub.c
을 확인해야합니다. 그것을 위해 탐험해라. :)
관련 문제
- 1. PHP를 사용하여 USB 장치를 감지 할 수 있습니까?
- 2. 전원이 켜져있을 때 블루투스 USB 동글을 감지 할 수 있습니까?
- 3. Tkinter 및 USB 장치 감지
- 4. 애플릿의로드를 감지 할 수 있습니까?
- 5. USB 전원 상태 감지
- 6. 확장 프로그램이 Chrome의 홈페이지를 감지 할 수 있습니까?
- 7. Java 및 USB 사운드 카드의 사운드 문제
- 8. USB 사운드 카드의 볼륨을 설정하는 방법은 무엇입니까?
- 9. USB 과전류를 감지 할 수있는 Windows API가 있습니까?
- 10. 하드웨어를 감지 할 수 있습니까?
- 11. PCIE USB 3.0 확장 카드에서 부팅
- 12. Windows에서 Qt의 USB 알림 감지
- 13. C - 숫자 (HW)에 숫자의 존재를 감지 할 필요
- 14. USB 포트의 전원을 제어 할 수 있습니까?
- 15. linux에서 폴더를 생성 할 수 있습니까?
- 16. linux에서 실행 파일을 동적으로로드 할 수 있습니까?
- 17. Windows에서 개발 - Linux에서 호스트 할 수 있습니까?
- 18. DataColumn.Expression을 확장 할 수 있습니까?
- 19. System.Delegate를 확장 할 수 있습니까?
- 20. Python LINUX에서 USB 모뎀/dev를 식별하는 방법
- 21. C#에서 고유하게 USB 키를 식별 할 수 있습니까?
- 22. Android - 실제 카메라 버튼이 있는지 감지 할 수 있습니까?
- 23. Linux에서 USB 호스트 컨트롤러 드라이버를 제거하십시오.
- 24. ARM Linux에서 네트워크 카드의 레지스터 값을 확인하는 방법은 무엇입니까?
- 25. 디렉토리 존재를 확인하는 펄 코드를 어떻게 최적화 할 수 있습니까?
- 26. 누군가가 직렬 포트 스니퍼를 사용하고 있는지 감지 할 수 있습니까?
- 27. adb는 Xperia S를 감지 할 수 없습니다.
- 28. Java에서 클래스를 사용할 수 있는지 감지 할 수 있습니까?
- 29. 크롬 확장 업데이트 감지
- 30. Firefox 확장 버전 감지
'lsusb'와'udev' 프로그램에 관심이 있습니다. 나는 그들이 실제로하는 시스템 호출을 정확히 모른다. 알아 내기 위해'strace'를 사용할 수 있습니다. –