Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-02-2006
Avatar de Jesús Pena
Jesús Pena Jesús Pena is offline
Miembro
 
Registrado: nov 2005
Posts: 88
Poder: 19
Jesús Pena Va por buen camino
Question Ayuda con Unidades

Estoy desarrollando una "cosilla" en la que muestro las unidades que tengo instaladas en mi ordenador y dependiendo del tipo muestro un icono u otro. El problema lo tengo en que no sé como diferenciar una unidad de cd con una de dvd y ¿como puedo saber que un disco está conectado a través de un puerto USB?. La rutina que tengo es esta
Código Delphi [-]
procedure TfrmInfoSys.GetDrivers;
var
  i ,j, nUnidad: integer;
  cRutaIni : String;
  DType : Integer;
  DriveString : String;
  tvNodo : TTreeNode;
begin
  GroupBox7.Height := 185;
  ProgressBar1.MinValue := 65;
  ProgressBar1.MaxValue := 90;
  TreeView1.Items.Clear;
  j := 0;
  for i:=65 to 90 do
  begin
    ProgressBar1.Progress := i;
    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;
    if not ((DType = 0) or (DType = 1)) then
    begin
      tvNodo := TreeView1.Items.Add(nil,chr(i) + ': ' +DriveString) ; //(DriveString,ImageList1);
      with tvNodo do
      begin
        case DType of
             DRIVE_REMOVABLE : ImageIndex := 6;
             DRIVE_FIXED     : ImageIndex := 2;
             DRIVE_REMOTE    : ImageIndex := 1;
             DRIVE_CDROM     : ImageIndex := 4;
             DRIVE_RAMDISK   : ImageIndex := 0;
        end;
      end;
      inc(j);
      nUnidad := i - 64; {Corresponde al número de unidad}
      tvNodo.SelectedIndex := tvNodo.ImageIndex;
//      tvNodo.StateIndex := tvNodo.ImageIndex;
      GetDriveInfo(nUnidad,cRutaIni,tvNodo);
    end;
  end;
  TreeView1.AutoExpand := True;
  TreeView1.ShowButtons := True;
  TreeView1.FullCollapse;
  GroupBox7.Height := 157;
end;
Responder Con Cita
  #2  
Antiguo 08-02-2006
Avatar de DarKraZY
DarKraZY DarKraZY is offline
Miembro
 
Registrado: ago 2003
Posts: 460
Poder: 21
DarKraZY Va por buen camino
Tal vez te sirva de ayuda los ejemplos de ShellControls que vienen con Delphi. Los componentes creo recordar que están en la carpeta Samples. Y aunque por defecto no está el código fuente, puedes encontrolo dentro de la carpeta "demos" de Delphi.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
La increíble tecla F1 en Delphi dec Varios 1 31-08-2005 22:26:45
Sobre las rxlibs y la ayuda... Elfoscuro Varios 2 25-05-2005 21:38:18
Ayuda Con Instalacion De Archivos De Ayuda Legolas Varios 1 01-12-2003 14:48:03
Como hago un archivo de ayuda? Ricsato Varios 2 29-10-2003 21:03:53
Ayuda Esau OOP 2 20-09-2003 00:10:57


La franja horaria es GMT +2. Ahora son las 22:02:42.


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