Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

_getdrives

Devuelve una máscara de bits que representa las unidades de disco disponibles actualmente.

Nota importante Importante

Esta API no se puede utilizar en las aplicaciones que se ejecutan en Windows en tiempo de ejecución. Para obtener más información, vea Funciones CRT no compatibles con /ZW.

unsigned long _getdrives( void );

Si la función se realiza correctamente, el valor devuelto es una máscara de bits que representa las unidades de disco disponibles actualmente. Posición 0 (el bit menos significativo) de bit es una unidad A, posición de 1 bits es unidad B, la posición de 2 bits es unidad C, y así sucesivamente. Si se produce un error en la función, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Rutina

Encabezado necesario

_getdrives

<direct.h>

Para obtener más información de compatibilidad, vea Compatibilidad.

// crt_getdrives.c
// This program retrives and lists out
// all the logical drives that are 
// currently mounted on the machine.

#include <windows.h>
#include <direct.h>
#include <stdio.h>
#include <tchar.h>

TCHAR g_szDrvMsg[] = _T("A:\n");

int main(int argc, char* argv[]) {
   ULONG uDriveMask = _getdrives();

   if (uDriveMask == 0)
   {
      printf( "_getdrives() failed with failure code: %d\n",
              GetLastError());
   }
   else
   {
      printf("The following logical drives are being used:\n");

      while (uDriveMask) {
         if (uDriveMask & 1)
            printf(g_szDrvMsg);

         ++g_szDrvMsg[0];
         uDriveMask >>= 1;
      }
   }
}
Se utilizan unidades lógicas siguientes: A: C: D: E:

No es aplicable Para llamar a la función estándar de C, utilice PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.

Adiciones de comunidad

AGREGAR
Mostrar: