楼上的还欠缺一点,判断磁盘类型,以分辩是光驱,可移动盘,还是固定盘:
if GetDriveType('D:') = DRIVE_FIXED then
showmessage('这是固定盘(硬盘)');
另外,楼上的代码还有个隐含问题,就是碰到未格式化的盘符就会检测不到。
综合一下楼上的代码,应该能解决楼主的问题了:
procedure TForm1.BitBtn1Click(Sender: TObject);
var
i:integer;
begin
for i := ord('C') to ord('Z') do
begin
if GetDriveType(char(i)+':') = DRIVE_FIXED then
begin
showmessage(char(i)+' 是固定盘符');
end;
end;
end;