Liste aller USB Geräte anzeigen (unter Linux mit C)
2012-11-13 von Mario
Mit diesem Beispiel können alle angeschlossenen USB-Geräte, unter Linux, ausgelesen werden.
Das Ergebnis sieht wie folgt aus.
Zum Vergleich, die Ausgabe von dem Befehl lsusb.
Damit das Programm auch kompiliert, wird eine Library benötigt.
Installation der USB Library
1 | sudo apt-get install libusb-dev |
Compile
1 | gcc find_usb.c -o find_usb.o -lusb |
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | #include <stdio.h> #include <stdlib.h> #include <usb.h> int main() { struct usb_bus *bus; struct usb_device *dev; usb_init(); usb_find_busses(); usb_find_devices(); for (bus = usb_get_busses(); bus; bus = bus->next) { printf ( "Bus %s \n" , bus->dirname); for (dev = bus->devices; dev; dev = dev->next) { printf ( "Device %s vid=%04X, pid=%04X\n" , dev->filename, dev->descriptor.idVendor, dev->descriptor.idProduct); } } return 0; } |
Viel Spaß damit! :)
Kategorie: IT Schlagwörter: C, IT, Linux, Programmieren, Ubuntu, USB