Главная страница
    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.009 c
3-63938
B M P
2003-03-03 11:18
2003.03.20
Интерфейс DBGrid


3-63976
cherox
2003-02-27 12:24
2003.03.20
TADOQuery


1-64207
MiXen
2003-03-08 18:29
2003.03.20
Моргание в PaintBox


6-64253
MasterA
2003-01-30 19:38
2003.03.20
Звук по сетке


6-64272
ArtUl
2003-01-30 02:54
2003.03.20
Помогите с шАрами!





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский