FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Obtener todas las unidades extraíbles [Solucionado]
Hola como estan!!! un saludo bien grande a todos los miembros del foro hace rato no me pasaba por aca, pero era por que he estado algo ocupado, mucha tarea
bueno este es el codigo que tengo: Código:
char DriveName[4] = "C:\\"; for (char Drive = 'C'; Drive <= 'Z'; Drive++) { DriveName[0] = Drive; int tipo = GetDriveType(DriveName); if( tipo == 2 ) { ShellExecute(NULL,"open", DriveName,NULL,NULL,SW_SHOW); } } Ubica todas las unidades extraibles (memoerias USB por decirlo asi) y las abre en el explorador con el comando ShellExecute. Cual es el problema? Que en los computadores donde esta instalado un multilector USB (o multilector de tarjetas) me sale el mensaje "inserte un disco en la unidad X:". Lo que quiero hacer es poder identificar que unidades del multilector tienen o no un memoria USB o SD como sea insertada para solo abrir estas en el explorador... estube tratando con el comando winexec de esta manera: Código:
WinExec("cmd /c start X:"); "el dispositivo no esta listo" en fin, el problema que tengo es poder identificar en que unidades del multilector si hay una meoria insertada.... un saludo y gracias de antemano. Última edición por Negriz fecha: 11-04-2009 a las 17:28:51. |
#2
|
||||
|
||||
Código:
char Root[4] = "A:\\"; // SetErrorMode(SEM_FAILCRITICALERRORS); for (; Root[0] <= 'Z'; Root[0]++) { if ((GetDriveType(Root) == DRIVE_REMOVABLE) && SetCurrentDirectory(Root)) { ShellExecute(NULL, "open", Root, NULL, NULL, SW_SHOW); } } SetCurrentDirectory("C:"); // |
#3
|
||||
|
||||
muchas gracias por responder tan pronto [cHackAll], revise el codigo que posteaste:
Código:
char Root[4] = "A:\\"; // SetErrorMode(SEM_FAILCRITICALERRORS); for (; Root[0] <= 'Z'; Root[0]++) { if ((GetDriveType(Root) == DRIVE_REMOVABLE) && SetCurrentDirectory(Root)) { ShellExecute(NULL, "open", Root, NULL, NULL, SW_SHOW); } } SetCurrentDirectory("C:"); // si ubiera alguna forma de evitar que ese mensaje saliera... igual sigo buscando. Gracias. |
#4
|
||||
|
||||
Bueno, dos preguntas la primera intentaste usar el codigo quitandole el comentario a la segunda linea? osea USANDOLA?... y dos; en qué linea te da el error?
|
#5
|
||||
|
||||
Ops lo siento es que cuando lo revise lo hize algo apurado
jajaja en serio si no me dices nunca li hubiera visto muchas gracias [gracias] [/gracias] |
#6
|
||||
|
||||
oye cHackAll muchas gracias, era justo lo que necesitaba, ahora se que unidades puedo usar y cuales no ha sido de mucha ayuda tu codigo, gracias.
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Obtener las IP de todas la pc de una red local | kurono | Varios | 5 | 06-10-2008 04:05:10 |
Como obtener las unidades de un Pc y con derechos de escritura!! | JClink | API de Windows | 2 | 21-08-2007 14:36:49 |
¡Extra, extra! Encontrado el primo hermano del "niño loco alemán" | dec | Humor | 10 | 29-11-2006 19:42:17 |
Como obtener todas las pcs de la red? | bustio | Varios | 6 | 26-08-2005 22:39:12 |
como obtener informacion extra de la imagen? | marcoev | Gráficos | 1 | 09-06-2003 19:10:52 |
|