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

Вниз

GetVolumeInformation   Найти похожие ветки 

 
dest81   (2007-12-11 18:11) [0]

Откуда берет ф-ция GetVolumeInformation серийный номер винчестера? И может ли такое быть что фирма закупила нескольков винчестеров с одним серийным номером?


 
Джо ©   (2007-12-11 18:13) [1]

GetVolumeInformation понятия не имеет о серийном номере винчестера.
Она позволяет получить номер ТОМА, каковой вообще присваивается при форматировании. И столь же легко изменяется. И в нем даже намека нет на уникальность.


 
dest81   (2007-12-11 18:15) [2]

Понял! А как получить какой-то уникальный номер ну типа серийный номер винчестера???


 
Джо ©   (2007-12-11 18:28) [3]

Ищи на сайте Алекс Коншина (Alex Konshin). Ссылка есть в его анкете на сайте.


 
Kolan ©   (2007-12-11 18:28) [4]

> [2] dest81   (11.12.07 18:15)
> Понял! А как получить какой-то уникальный номер ну типа
> серийный номер винчестера???

GUID сойдет?

CoCreateGUID


 
Германн ©   (2007-12-11 18:35) [5]


> Джо ©   (11.12.07 18:28) [3]
>
> Ищи на сайте Алекс Коншина (Alex Konshin). Ссылка есть в
> его анкете на сайте.
>

Он не обновил анкету после обвала. Поэтому вот ссылка на его сайт:
http://home.earthlink.net/~akonshin/index.htm


 
DVM ©   (2007-12-11 23:15) [6]


> А как получить какой-то уникальный номер ну типа серийный
> номер винчестера???

Только имей в виду, что даже с пом модуля Коншина можно получить данную инфу далеко не со всех жестких дисков (мне такие попадались многократно)


 
opv88   (2008-02-10 15:58) [7]

Функция GetVolumeInformation позволяет получить серийный номер диска, правда в десятеричном формате. Переведя его в шестнадцатиричный формат получим тот номер, который указан производителем и определяется некоторыми тестовыми программами. Вот простая процедурка на Delphy 7:
procedure TForm1.Button1Click(Sender: TObject);
VAR
 SerialNum:DWORD;
 a,b:DWORD;
 Buffer,disk :Array[0..255]of char;
begin
 StrPCopy(@disk,Edit1.text);
 if GetVolumeInformation(@disk,Buffer,sizeof(Buffer),@SerialNum,a,b,nil,0) then
 begin
   Edit2.Text:=IntToStr(SerialNum);
   Edit3.Text:=Buffer;
   Edit4.Text:=IntToStr(a);
 end;
end;

Здесь SerialNum - серийный номер диска, отображаемый в поле edit2.


 
ketmar ©   (2008-02-10 17:31) [8]

>[7] opv88 (2008-02-10 15:58:00)
ты откуда вылез с такой ерундой? залезь назад. и из этого «назада» почитай немного о структуре бут-сектора.

---
Understanding is not required. Only obedience.


 
Джо ©   (2008-02-10 18:35) [9]

Удалено модератором


 
Джо ©   (2008-02-10 18:36) [10]

> [7] opv88   (10.02.08 15:58)
> Здесь SerialNum - серийный номер диска, отображаемый в поле


Здесь SerialNum - номер, никакого отношения не имеющий к «серийному номеру» диска.



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

Форум: "WinAPI";
Текущий архив: 2008.12.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.039 c
2-1226403905
IVAKA_27
2008-11-11 14:45
2008.12.21
нужен совет по TreeNode


15-1224082835
**Renegat**
2008-10-15 19:00
2008.12.21
Delfi сделать вирус


15-1224178795
LongLoveLove
2008-10-16 21:39
2008.12.21
Актуальность предметов.


15-1224012169
guav
2008-10-14 23:22
2008.12.21
А мужики не знали


2-1226592987
aKor
2008-11-13 19:16
2008.12.21
DBGrid





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