Форум: "Основная";
Текущий архив: 2002.04.08;
Скачать: [xml.tar.bz2];
ВнизКак определить кол-во дисков в системе? Найти похожие ветки
← →
Dimka Maslov (2002-03-26 12:23) [2]
procedure GetLogicalDriveList(const List: TStrings);
var
Size, Pos: Cardinal;
Buffer: array[0..127] of AnsiChar;
P: PChar;
DriveType: Integer;
begin
List.BeginUpdate;
try
List.Clear;
Size:=GetLogicalDriveStrings(SizeOf(Buffer), Buffer);
Pos:=0;
while Pos<Size do begin
P:=@Buffer[Pos];
DriveType:=GetDriveType(P);
List.AddObject(P, TObject(DriveType));
while Buffer[Pos]<>#0 do Inc(Pos);
Inc(Pos);
end;
finally
List.EndUpdate;
end;
end;
На выходе:
List.Count - количество дисков в системе;
List[i] - список дисков в системе;
Integer(List.Objects[i]) - тип диска (DRIVE_REMOVABLE - флоппи;
DRIVE_FIXED - жёсткий; DRIVE_REMOTE - сетевой; DRIVE_CDROM - сидюк; DRIVE_RAMDISK - виртуальный)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.04.08;
Скачать: [xml.tar.bz2];
Память: 0.43 MB
Время: 0.004 c