Tipos de Unidades de almacenamiento [C/C++]

Iniciado por Expermicid, Enero 17, 2013, 02:05:26 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Hola a todos!!!

Este code tiene 2 objetivos. Primero listar las unidades de almacenamiento de una computadora. Y segundo detalla de que tipo es.
La primera parte lo conseguimos con _getdrives y la segunda con GetDriveType.

Código: c
#include <windows.h>
#include <direct.h>
#include <tchar.h>
#include <iostream>

using namespace std;

TCHAR DrvMsg[] = _T("A:");

void main() {
   ULONG DriveMask = _getdrives();
   if (DriveMask == 0)
      cout << "Error al listar" << endl;
   else {
      while (DriveMask) {
         if (DriveMask & 1) {
            cout << "(" << DrvMsg << ") -->  ";
switch (GetDriveType(DrvMsg)) {
case DRIVE_UNKNOWN:
cout << "El tipo de unidad no se puede determinar." << endl;
break;
case DRIVE_NO_ROOT_DIR:
cout << "No hay volumen montado en la ruta especificada." << endl;
break;
case DRIVE_REMOVABLE:
cout << "Unidad de disquete, memoria USB o lector de tarjetas flash." << endl;
break;
case DRIVE_FIXED:
cout << "Unidad de disco duro o unidad flash." << endl;
break;
case DRIVE_REMOTE:
cout << "Unidad de control remoto (red)." << endl;
break;
case DRIVE_CDROM:
cout << "Unidad de CD-ROM." << endl;
break;
case DRIVE_RAMDISK:
cout << "Unidad de disco RAM." << endl;
break;
}
}
         ++DrvMsg[0];
         DriveMask >>= 1;
      }
   }
   getchar();
}


En funcionamiento:



Saludos