Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.03.20;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
1-64169
Vasechkin
2003-03-07 11:41
2003.03.20
Поиск в текстовом файле.


3-63970
vdv
2003-02-28 04:46
2003.03.20
нужно мнение ... что лучше FastReport или Report Builder


6-64276
Logo
2003-01-30 09:22
2003.03.20
idFTP.Get


7-64420
Oleg_G
2003-01-22 23:56
2003.03.20
Как можно узнать объем Винта в Гб и ОЗУ


1-64140
Barman
2003-03-06 17:07
2003.03.20
Проблема с WinXP





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский