Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > ОС и железо
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 03.12.2009, 15:55
OnzMill OnzMill вне форума
Прохожий
 
Регистрация: 06.10.2009
Сообщения: 48
Репутация: 10
По умолчанию програмное получение информации о физическом диске

Добрый день всем.
есть проблемка, надо получить как можно подробные сведения о физических носителях информации (дисках, CD, DVD).
Тоесть, если это HDD, то надо: его паспорт, серийник, количество логических дисков, их розмер.....по возможности,
может есть способ получить программно доступ к его таблице разделов, (получить доступ к логическому диску можно легко).
__________________
Говори что думаешь, думай, что говоришь.
(Шоссе 60)
Ответить с цитированием
  #2  
Старый 03.12.2009, 16:11
OnzMill OnzMill вне форума
Прохожий
 
Регистрация: 06.10.2009
Сообщения: 48
Репутация: 10
По умолчанию

есть способ получить программно доступ к его таблице разделов

а именно -
Работа с жестким диском в этих операционных системах производится путем открытия диска как файла с помощью функции CreateFile и указания диска или раздела по схеме Device Namespace (открывается физический диск - '\\.\PHYSICALDRIVE<n>'), полученный хэндл в дальнейшем используется для работы с диском с помощью функций ReadFile, WriteFile и DeviceIoControl.

hFile := CreateFile(PChar('\\.\PhysicalDrive'+IntToStr(Driv e)),
GENERIC_READ, FILE_SHARE_READ or FILE_SHARE_WRITE,nil,OPEN_EXISTING,0,0);
if hFile = INVALID_HANDLE_VALUE then Exit;
__________________
Говори что думаешь, думай, что говоришь.
(Шоссе 60)
Ответить с цитированием
  #3  
Старый 03.12.2009, 23:08
ApxaHGe1 ApxaHGe1 вне форума
Активный
 
Регистрация: 08.04.2008
Адрес: Нижний новгород
Сообщения: 311
Репутация: 38
По умолчанию

Что бы не создавать новую тему, отпишусь тут то же ,
Если возможность сменить серийный номер тома диска, в реалтайме?
т.е. что бы его номер был изменен, без перезагрузки системы.. ?
Ответить с цитированием
  #4  
Старый 03.12.2009, 23:32
Аватар для NIch
NIch NIch вне форума
Продвинутый
 
Регистрация: 02.06.2008
Адрес: Бендеры ПМР
Сообщения: 754
Репутация: 2446
По умолчанию

На С++
http://www.codenet.ru/progr/cpp/change_volume.php
__________________
В начале был Бит, потом Байт и только потом появилось Слово...
Ответить с цитированием
  #5  
Старый 09.12.2009, 19:23
OnzMill OnzMill вне форума
Прохожий
 
Регистрация: 06.10.2009
Сообщения: 48
Репутация: 10
По умолчанию

Цитата:
Сообщение от ApxaHGe1
Что бы не создавать новую тему, отпишусь тут то же ,
Если возможность сменить серийный номер тома диска, в реалтайме?
т.е. что бы его номер был изменен, без перезагрузки системы.. ?

)))))))
сменить серийник тома или диска ))))
Диска (HDD) из под винды без наличия аппаратно програмного комплекса - ет врядли/ ;P
__________________
Говори что думаешь, думай, что говоришь.
(Шоссе 60)
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 12:38.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter