![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#14
|
|||
|
|||
|
Огромное спасибо всем, за ответы!
Вот что было в итоге найдено и обработано из просторов Интернета: Чтобы увидеть какие в системе вообще подключены физические диски их номер (PHISYCALDRIVE+n), можно воспользоваться такой функцией: Код:
procedure TForm1.Button18Click(Sender: TObject);
var
i: Integer;
NewMenu: TMenuItem;
PI: TPartInfo;
PhysicalDrives: TPhysicalDrives;
begin
GetDrivesInfo(PhysicalDrives);
for i := 0 to High(PhysicalDrives) do
begin
Label42.Caption:=Label42.Caption+'Диск '+ IntToStr(i);
Label42.Caption:=Label42.Caption+' '+IntToStr(PhysicalDrives[i].PartitionTable[i].NumberOfSects);
end;
end;Чтобы заработало нужно подключить библиотеку llinfo, взятую из проекта Самое главное: ПОМОГЛА ВОЛШЕБНАЯ БИБЛИОТЕКА Компонентов GLibWMI У которой огромные возможности по считыванию всех данных о системе в целом. В частности о физических дисках(Номер PHISYCALDRIVE, размер, количество секторов, серийный номер, интерфейс подключения и другие параметры). В архиве идут примеры по которым можно разобраться что к чему. PS. Вопрос остался открытым: Каким образом конкретный PHISYCALDRIVE относится к конкретной букве устройства (например PHICALDRIVE1 -> диск F) . Если кто то владеет информацией напишите пожалуйста примерчик или дайте ссылку для решения данной проблемы. Огромное Спасибо! |