Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Filtrar unidades en ShellTreeView (https://www.clubdelphi.com/foros/showthread.php?t=55365)

MaMu 15-04-2008 05:51:07

Filtrar unidades en ShellTreeView
 
Se puede hacer que un ShellTreeView no muestre una unidad de disco rígido? Me gustaria poder hacer que solo muestre las unidades de discos Removibles que se encuentren en el sistema.

Saludos

cHackAll 15-04-2008 16:53:05

Código Delphi [-]
procedure TForm1.ShellTreeView1AddFolder(Sender: TObject; AFolder: TShellFolder; var CanAdd: Boolean);
begin
 CanAdd := GetDriveType(PChar(AFolder.PathName)) = DRIVE_REMOVABLE;
end;

0j0; Root = 'rfMyComputer'

saludos

MaMu 15-04-2008 20:43:43

Cita:

Empezado por cHackAll (Mensaje 280214)
Código Delphi [-]procedure TForm1.ShellTreeView1AddFolder(Sender: TObject; AFolder: TShellFolder; var CanAdd: Boolean);
begin
CanAdd := GetDriveType(PChar(AFolder.PathName)) = DRIVE_REMOVABLE;
end;




0j0; Root = 'rfMyComputer'

saludos

Intuitivamente, si quiero mostrar un CD-ROM seria asi?


Código Delphi [-]
 
procedure TForm1.ShellTreeView1AddFolder(Sender: TObject; AFolder: TShellFolder; var CanAdd: Boolean);

begin
CanAdd := GetDriveType(PChar(AFolder.PathName)) = DRIVE_CDROM; 
end;

Saludos

cHackAll 15-04-2008 22:23:42

Cita:

Empezado por mamu (Mensaje 280279)
Intuitivamente, si quiero mostrar un CD-ROM seria asi? [codigo]

Si, mejor con "<> DRIVE_FIXED"

Saludos

MaMu 16-04-2008 05:40:30

Cita:

Empezado por cHackAll (Mensaje 280305)
Si, mejor con "<> DRIVE_FIXED"

Saludos

Osea, si quiciara mostrar solamente DRIVE_REMOVABLE y DRIVE_CDROM, es decir ambas, como seria la sintaxis?

Saludos

cHackAll 16-04-2008 15:58:38

Cita:

Empezado por MaMu (Mensaje 280373)
Osea, si quiciara mostrar solamente DRIVE_REMOVABLE y DRIVE_CDROM, es decir ambas, como seria la sintaxis?

Saludos

Código Delphi [-]
procedure TForm1.ShellTreeView1AddFolder(Sender: TObject; AFolder: TShellFolder; var CanAdd: Boolean);
begin
 CanAdd := GetDriveType(PChar(Copy(AFolder.PathName, 1, 2))) in [DRIVE_REMOVABLE, DRIVE_CDROM];
end;


La franja horaria es GMT +2. Ahora son las 13:16:50.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi