Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.20;
Скачать: CL | DM;

Вниз

Количество физических дисков   Найти похожие ветки 

 
Oleg--   (2003-01-22 09:59) [0]

Привет.. Как бы определить количество установленных физических дисков. (Вне зависимости на какие логические диски они разбиты :)

может что-то вроде этого:

function OpenHDDAsFile( path : String ) : THandle;
begin
Result := Windows.CreateFile( PChar(path), GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE, nil, OPEN_EXISTING, 0, 0 );
end;

--------
var
hDevice : THandle;
begin
function OpenHDDAsFile( path : String ) : THandle;
begin
Result := Windows.CreateFile( PChar(path), GENERIC_READ, FILE_SHARE_READ, nil, OPEN_EXISTING, 0, 0 );
end;


var
hDevice : THandle;
begin
hDevice := OpenHDDAsFile("\\.\PhysicalDrive0");
hDevice := OpenHDDAsFile("\\.\PhysicalDrive1");
hDevice := OpenHDDAsFile("\\.\PhysicalDrive2");
hDevice := OpenHDDAsFile("\\.\PhysicalDrive3");
hDevice := OpenHDDAsFile("\\.\PhysicalDrive4");
end
-----

ну все в цикле конечно... и смотреть .. открылся или нет?


 
Oleg--   (2003-01-22 10:01) [1]

странно скопировался пример.. так лучше :)))

--------
var
hDevice : THandle;
begin
function OpenHDDAsFile( path : String ) : THandle;
begin
Result := Windows.CreateFile( PChar(path), GENERIC_READ, FILE_SHARE_READ, nil, OPEN_EXISTING, 0, 0 );
end;


var
hDevice : THandle;
begin
hDevice := OpenHDDAsFile("\\.\PhysicalDrive0");
hDevice := OpenHDDAsFile("\\.\PhysicalDrive1");
hDevice := OpenHDDAsFile("\\.\PhysicalDrive2");
hDevice := OpenHDDAsFile("\\.\PhysicalDrive3");
hDevice := OpenHDDAsFile("\\.\PhysicalDrive4");
end
-----


 
Hip Hop Music   (2003-01-22 10:15) [2]

Путь правильный. Смелее!


 
Игорь Шевченко ©   (2003-01-22 10:48) [3]

В кладовке, в разделе готовые программы лежит программа QuerySystemInformation (с исходниками) - там есть это определение


 
Oleg--   (2003-01-23 11:21) [4]

Hip Hop Music: хм.. проверить не на чем, но будут ли определятся SCSI диски таким образом или допольнительно надо будет проверить "\\.\ScsiN" устройства?


 
Alex Konshin ©   (2003-01-23 21:50) [5]

Можно не открывая через Native API.
А открыть может и не получиться, если у тебя прав нет.


 
Alex Konshin ©   (2003-01-23 21:52) [6]

Кстати, я боюсь что в случае физического RAID он будет виден как один единственный диск. Хотя не знаю - у меня нет RAID.



Страницы: 1 вся ветка

Текущий архив: 2003.03.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
3-63976
cherox
2003-02-27 12:24
2003.03.20
TADOQuery


3-64038
skiph
2003-02-27 09:39
2003.03.20
File not found


6-64259
Lusha
2003-01-31 17:30
2003.03.20
Sockets & TServiceApplication


6-64265
Stas
2002-12-18 12:10
2003.03.20
Отправка почты


1-64185
lamak
2003-03-05 21:48
2003.03.20
TBitMap