Ver la Versión Completa : Listar unidades disponibles con Filtro
Como puedo hacer para listar en un ComboBox, todas las unidades de disco que tengo en mi compu, osea A:, C:, D:, etc.
Y ahora lo complicado, como puedo hacer para filtrar la lista de unidades, es decir, quiero listar todas las unidades de disco que no sean del disco rígido, ni C: ni ninguna otra asignada si es que hay particiones. Por ejemplo, solo quiero listar disketeras, unidades de CD, lector de memorias, etc.
Se como hacer para saber si hay un CD o Diskette en la unidad, pero hacer este filtro no se me ocurre como.
Alguna idea?
Saludos y Gracias
Esto me servirá, si tengo conectado por USB un lector de memorias? Es lo unico que se me ocurrió en base a lo que anduve leyendo en el foro.
procedure GetDrivers;
var
i ,j, nUnidad: integer;
cRutaIni : String;
DType : Integer;
DriveString : String;
begin
j := 0;
for i:=65 to 90 do
begin
cRutaIni:= chr(i) + ':\';
DType := GetDriveType(Pchar(cRutaIni));
case DType of
0 : DriveString := ' Disco No Reconocido';
1 : DriveString := ' Sin Directorio Raiz';
DRIVE_REMOVABLE : DriveString := ' Unidad de Diskette';
DRIVE_FIXED : DriveString := ' Unidad de Disco';
DRIVE_REMOTE : DriveString := ' Unidad de Red';
DRIVE_CDROM : DriveString := ' Unidad de CD-ROM';
DRIVE_RAMDISK : DriveString := ' Unidad de Disco RAM';
end;
//Filtro las unidades, use los string, pero lo puedo hacer segun el valor de Dtype, con integers
if (DriveString<>' Sin Directorio Raiz') and (DriveString<>' Unidad de Disco') and (DriveString<>' Unidad de Red')
then begin
Form1.Memo1.Lines.Add(cRutaIni+' '+DriveString);
end;
end;
end;
Nota: el lector de memorias, lo tengo fijo, no lo desconecto nunca.
Saludos y Gracias
cHackAll
16-05-2007, 21:51:30
Lo mismo que lo tuyo:
procedure GetDrives;
var Drive: Char;
begin
for Drive := 'A' to 'Z' do
begin
if GetDriveType(PChar(Drive + ':\')) in [DRIVE_REMOVABLE, DRIVE_CDROM, DRIVE_RAMDISK] then
Form1.Memo1.Lines.Add(Drive + ':');
end;
end;
No entiendo lo que quieres concretamente. tu mismo te respondiste!
Jeje, es cierto. Pero mi duda, radica en si esto me sirve para las unidades del lector usb de memorias, de la camara de fotos, si me va a funcionar si problemas. Osea, que tipo de unidad seria, removible?
Saludos
seoane
17-05-2007, 00:35:25
Jeje, es cierto. Pero mi duda, radica en si esto me sirve para las unidades del lector usb de memorias, de la camara de fotos, si me va a funcionar si problemas. Osea, que tipo de unidad seria, removible?
Pues depende, no todos los dispositivos usb son "removibles". Aunque hablando de cámaras digitales y tarjetas de memoria, lo mas probable es que estén marcados como "removibles".
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.