Win32API 論理ドライブ名を文字列で取得する GetLogicalDriveStrings
使用するAPI
GetLogicalDriveStringsを呼び出すと、szLogicalDrivesにヌル文字区切りで存在するドライブ名が格納される。GetLogicalDriveStringsを呼び出した後は、格納されたドライブ名を解析しながら表示している。
C:\\0D:\\0E:\\0
#include <windows.h> int main() { char szLogicalDrives[64]; char *p; DWORD dwBuffSize; dwBuffSize = sizeof(szLogicalDrives)/sizeof(szLogicalDrives[0]); if (GetLogicalDriveStrings(dwBuffSize, szLogicalDrives) <= 0) { printf("GetLogicalDriveStrings failed"); return 1; } for (p = szLogicalDrives; *p != '\0'; p += strlen(p) + 1) { puts(p); } return 0; }