Hola amigos, he estado navegando por la web y no he encontrado nada parecido (Y no, no son los que traen delphi), quisiera saber ¿cómo puedo listar todas las unidades(Drives: Disco, CD-ROM, USB, etc) instaladas en un listBox?.
Fleon xD
Listar todos los discos del sistema en un ListBox
Comenzado por
Fleon
, jul 15 2009 05:57
3 respuestas en este tema
#1
Escrito 15 julio 2009 - 05:57
#2
Escrito 16 julio 2009 - 06:46
Prueba con algo como esto:
Si solo quieres los CDRom:
Si solo quieres los USB
etc ...
delphi
var C: Char; begin for C:= 'A' to 'Z' do if GetDriveType(PChar(C+':\')) <> DRIVE_NO_ROOT_DIR then ListBox1.Items.Add(C+':\'); end;
Si solo quieres los CDRom:
delphi
var C: Char; begin for C:= 'A' to 'Z' do if GetDriveType(PChar(C+':\')) = DRIVE_CDROM then ListBox1.Items.Add(C+':\'); end;
Si solo quieres los USB
delphi
var C: Char; begin for C:= 'A' to 'Z' do if GetDriveType(PChar(C+':\')) = DRIVE_REMOVABLE then ListBox1.Items.Add(C+':\'); end;
etc ...
#3
Escrito 16 julio 2009 - 06:49
Hola Fleon, puedes utilizar la función GetDriveType
Busca esa función en la ayuda, tiene mas opciones.
Saluditos
delphi
var drive : Char; tipo : Integer; begin for drive:= 'A' to 'Z' do begin tipo := GetDriveType(PChar(drive+':\')); if tipo <> 0 then case tipo of DRIVE_REMOVABLE: ListBox.Items.Add(drive+' (Disco extraible)'); DRIVE_FIXED: ListBox.Items.Add(drive+' (Disco Fijo)'); DRIVE_CDROM: ListBox.Items.Add(drive+' '+'(CD ROM)'); end;//Case end;
Busca esa función en la ayuda, tiene mas opciones.
Saluditos
#4
Escrito 16 julio 2009 - 09:28
Amigos sos unos verdugos, muchas gracias
Fleon xD
Fleon xD