Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-12-2007
desi desi is offline
Registrado
 
Registrado: nov 2007
Posts: 1
Poder: 0
desi Va por buen camino
Question como detecto unidades extraibles

soy nuevo en esto de programar y quisiera saber como ago para detectar unidades extribles como memorias usb
Responder Con Cita
  #2  
Antiguo 12-12-2007
bpesoj bpesoj is offline
Registrado
 
Registrado: dic 2004
Posts: 9
Poder: 0
bpesoj Va por buen camino
Hola,
Puedes intentar con este procedimiento:
Código Delphi [-]Procedure Unitats(Var l:TStringList);
var i:Word; k:Char; s:String;
begin for k:='a' to 'z' do begin try s:=k+':';
i := GetDriveType(PChar(s));
if i=DRIVE_REMOVABLE then l.Add(String(k));
except end;
end;
end;

Si miras en la ayuda la función GetDriveType puedes detectar más tipos de unidades (fijas, de red, etc.)
Responder Con Cita
  #3  
Antiguo 12-12-2007
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 18
Khronos Va por buen camino
Hola, te aconsejo que te leas la guia de estilo antes de nada , porque este tema no va de acuerdo con la seccion donde posteas.

Hay una funcion muy simple para detectar unidades extraibles GetDriveType. Esta funcion se encuentra en los uses de Windows.

Los posibles valores que devuelve esta funcion son:

Código Delphi [-]
DRIVE_UNKNOWN = 0;
  {$EXTERNALSYM DRIVE_UNKNOWN}
  DRIVE_NO_ROOT_DIR = 1;
  {$EXTERNALSYM DRIVE_NO_ROOT_DIR}
  DRIVE_REMOVABLE = 2;
  {$EXTERNALSYM DRIVE_REMOVABLE}
  DRIVE_FIXED = 3;
  {$EXTERNALSYM DRIVE_FIXED}
  DRIVE_REMOTE = 4;
  {$EXTERNALSYM DRIVE_REMOTE}
  DRIVE_CDROM = 5;
  {$EXTERNALSYM DRIVE_CDROM}
  DRIVE_RAMDISK = 6;
  {$EXTERNALSYM DRIVE_RAMDISK}

En tu caso, para detectar una unidad USB:


Código Delphi [-]
var
drive: char;
begin
 
For Drive:='c' to 'z' do begin
If GetDriveType (pchar(drive + ':\')) = DRIVE_REMOVABLE then begin
//se inicia un bucle que busca todas las unidades de la c
//hasta la z y si detecta que alguna es de tipo USB
 
showmessage('Unidad ' + pchar(drive));
//muestra un mensaje
end;
end;

Espero que te ayude

Salu2

Última edición por Khronos fecha: 12-12-2007 a las 16:02:34.
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
¿Cómo detecto CTRL+C en consola? Mastropiero Varios 8 07-02-2008 10:43:45
Como detecto cuando mandan imprimir desde Windows SISCOYMAS API de Windows 2 10-05-2007 08:21:04
Como saber las Unidades de las APIs onlytk API de Windows 1 06-11-2005 03:42:42
Cómo medir en unidades de tiempo? Gabriel2 Varios 2 31-10-2005 15:51:24
¿Cómo detecto la pulsación de CTRL + ALT + 1? nesetru Varios 4 01-03-2004 18:31:20


La franja horaria es GMT +2. Ahora son las 04:47: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