Win32API 論理ドライブ名を取得する GetLogicalDrives
使用するAPI
GetLogicalDrivesで、32ビット整数(DWORD型)のビット列で存在するドライブ名を取得する。最下位ビットからA、B, ..., Zを表す。1ビットずつシフトしながらビットがオンかオフかを調べ、オンならばそのドライブが存在することになる。
#include <windows.h> int main() { DWORD dwLogicalDrives; int i; dwLogicalDrives = GetLogicalDrives(); for (i = 0; i < 26; i++) { if ((dwLogicalDrives & 1) != 0) { printf("%c ", i + 'A'); } dwLogicalDrives >>= 1; } return 0; }