Scusate qualcuno sa dirmi, come posso fare in c, ad ottenere una lista dei drives(cd roms, perifiche usb, ecc...), per poi eventualmente accedere ad uno dei drive elencati.
Uso Ubuntu 10.04.
Scusate qualcuno sa dirmi, come posso fare in c, ad ottenere una lista dei drives(cd roms, perifiche usb, ecc...), per poi eventualmente accedere ad uno dei drive elencati.
Uso Ubuntu 10.04.
Una maniera facile facile è stampare il contenuto della cartella /proc/modules (per iniziare) il cuale elenca il contenuto dei moduli in uso.. Per questo ti servirà un minimo di conoscenza di programmazione di sistema in Linux..
Scrivere un programma che viene eseguito in kernel space sarebbe un pò più laborioso..
Non cambia niente da versione a versione, sempre che non siano stati effettuati dei cambiamenti alla kernel API da versione a versione, il che è possibile, e questo potrebbe fare la differenza se il tuo programma verrebbe eseguito in kernel space..Uso Ubuntu 10.04.
Cosa vuoi fare esattamente?per poi eventualmente accedere ad uno dei drive elencati.
Se si parla di drive, io guarderei i file system montati in /proc/mounts.
Amaro C++, il gusto pieno dell'undefined behavior.
Originariamente inviato da MItaly
Se si parla di drive, io guarderei i file system montati in /proc/mounts.![]()
Mi sono confuso con drivers...![]()
![]()
![]()
In /proc/mounts leggo questo:Originariamente inviato da MItaly
Se si parla di drive, io guarderei i file system montati in /proc/mounts.
Posso fare in modo che il mio programma legga questo file, ma poi come interpretarlo (scusate la mia ignoranza)? Devo creare una GtkComboBox che mi mostri i vari dispositivi, come faccio a capire se c'è una pendrive o un cdrom?codice:rootfs / rootfs rw 0 0 none /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0 none /proc proc rw,nosuid,nodev,noexec,relatime 0 0 none /dev devtmpfs rw,relatime,size=1026460k,nr_inodes=216348,mode=755 0 0 none /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0 /dev/disk/by-uuid/10777e0c-bb20-483e-b44a-a796774c6441 / ext4 rw,relatime,errors=remount-ro,barrier=1,data=ordered 0 0 none /sys/fs/fuse/connections fusectl rw,relatime 0 0 none /sys/kernel/debug debugfs rw,relatime 0 0 none /sys/kernel/security securityfs rw,relatime 0 0 none /dev/shm tmpfs rw,nosuid,nodev,relatime 0 0 none /var/run tmpfs rw,nosuid,relatime,mode=755 0 0 none /var/lock tmpfs rw,nosuid,nodev,noexec,relatime 0 0 none /lib/init/rw tmpfs rw,nosuid,relatime,mode=755 0 0 binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,nosuid,nodev,noexec,relatime 0 0 gvfs-fuse-daemon /home/salvatore/.gvfs fuse.gvfs-fuse-daemon rw,nosuid,nodev,relatime,user_id=1000,group_id=1000 0 0 /dev/sr0 /media/Disk iso9660 ro,nosuid,nodev,relatime,uid=1000,gid=1000,iocharset=utf8,mode=0400,dmode=0500 0 0
/dev/sr0 è il tuo cd-dvd drive. Le periferiche usb normalmente sono /dev/sdbN dove N è un numero di indicizzazione.Originariamente inviato da Pensiero
/dev/sr0