Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

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



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 05:48:23.


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