Previous Entry Share Next Entry
WINAPI, получить имена дисков
spider, 7 leg, паук, семь ног
mygentoonotes
define _UNICODE
define UNICODE
#include <win\windows.h>
#include <tchar.h>

//#include <stdio.h>

#ifdef UNICODE
    #define _tputchar putwchar
#else //!_UNICODE
    #define _tputchar putchar
#endif

#define DISK_PATH_LENGTH 4
typedef _TCHAR DRIVE_LETTER[DISK_PATH_LENGTH]; //По четыре символа на диск
#define MAX_LETTERS 26

int _tmain(void)
{
    DRIVE_LETTER listOfDisks[MAX_LETTERS];//Не больше 26

    //В i записывается количество дисков, в listOfDisks -- массив строк из четырёх символов
    DWORD i=GetLogicalDriveStrings(sizeof(DRIVE_LETTER)*MAX_LETTERS,(LPTSTR)&listOfDisks[0]) / DISK_PATH_LENGTH;
    
    for (DWORD j=0;i>j;j++) _tprintf(TEXT("%ls\n"),listOfDisks[j]);
    return 0;
};

?

Log in

No account? Create an account