ドライブ情報


uint sDriveName;
const uint DRIVE_TYPE_UNDTERMINED = 0;
const uint DRIVE_ROOT_NOT_EXIST = 1;
const uint DRIVE_REMOVABLE = 2;
const uint DRIVE_FIXED = 3;
const uint DRIVE_REMOTE = 4;
const uint DRIVE_CDROM = 5;
const uint DRIVE_RAMDISK = 6;
for (char sDrive = 'A'; sDrive < 'Z'; sDrive++) {
sDriveName = GetDriveType(sDrive + @":\");
switch(sDriveName) {
case DRIVE_TYPE_UNDTERMINED:
richTextBox1.Text += sDrive + "判別不能\r\n";
break;
case DRIVE_ROOT_NOT_EXIST:
richTextBox1.Text += sDrive + "ルートディレクトリが存在しない\r\n";
break;
case DRIVE_CDROM:
richTextBox1.Text += sDrive + "CD-ROM ドライブ\r\n";
break;
case DRIVE_FIXED:
richTextBox1.Text += sDrive + "ハードディスクドライブ\r\n";
break;
case DRIVE_RAMDISK:
richTextBox1.Text += sDrive + "RAM ドライブ\r\n";
break;
case DRIVE_REMOTE:
richTextBox1.Text += sDrive + "ネットワークドライブ\r\n";
break;
case DRIVE_REMOVABLE:
richTextBox1.Text += sDrive + "リムーバブルドライブ\r\n";
break;
}
}

[DllImport("kernel32.dll")]
static extern uint GetDriveType(string lpRootPathName);

こんな感じでドライブ情報を取得できます。
しかし、RAM DISKなんて今でもあるんですかね〜???