procedure GetDrivernum(var DiskList: TStringList); var i: Char; AChar: array[1..3] of char; j: integer; drv: PChar; begin for i := 'C' to 'Z' do begin if DiskInDrive(i) then begin AChar[1] := i; AChar[2] := ':'; AChar[3] := #0; drv := @AChar; J := GetDriveType(drv); if J = DRIVE_REMOVABLE then DiskList.Add(i + ':4'); //(软盘) if J = DRIVE_FIXED then DiskList.Add(i + ':1'); //(硬盘) if J = DRIVE_REMOTE then DiskList.Add(i + ':3'); //(网络映射) if J = DRIVE_CDROM then DiskList.Add(i + ':2'); //(光盘) if J = DRIVE_RAMDISK then DiskList.Add(i + ':4'); // (虚拟盘) if J = DRIVE_UNKNOWN then DiskList.Add(i + ':4'); // (未知盘) end; end; end;