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

Вниз

Серийный номер (опять)   Найти похожие ветки 

 
i2e   (2004-04-16 11:21) [0]

Серийный номер тома определяется функцией GetVolumeInformation.
Для Win95, Win98 проблем не было, а для Win2k и WinNT полученные данные каждый раз разные.
А чего не так?

var
  VolName:   PChar;
  SerialNmr: PDWord;
  StrNmr:    String;
  CL:        Cardinal;
begin
     New(SerialNmr);
     New(VolName);
     GetVolumeInformation("C:\", VolName, SizeOf(VolName), SerialNmr, CL, CL, nil, 0);
     StrNmr := IntToHex(Integer(SerialNmr^), 8);
     ....

или:  Str := IntToStr(Integer(SerialNmr^));


Причем, как я заметил в других вопросах форума на эту тему, делается различие между томом и диском. Меня вполне бы устроил данный вариант, если бы была повторяемость результата.


 
Anatoly Podgoretsky ©   (2004-04-16 11:31) [1]

Странное у тебя какое то управление память, а ты еще AV не получал?


 
i2e   (2004-04-16 12:05) [2]

Может и странное. Как умею. Учиться некогда, всем надо результат.
Что такое AV?


 
Anatoly Podgoretsky ©   (2004-04-16 12:10) [3]

Учиться лучше на чужих ошибка, но все почему то учатся на своих.
А ты уже сходил в местное FAQ?


 
Kerk ©   (2004-04-16 13:47) [4]


> Что такое AV?

Access Violation


 
Рамиль ©   (2004-04-16 13:57) [5]

Мне интересно как в 95 и 98 такое работало...


 
i2e   (2004-04-16 14:32) [6]

AV на это место не получал.
Под 95 и 98 такое работало вообще без проблем. Проверено у многих пользователей. Может это и странно, но это факт.
FAQ посмотрел, кое-что нашел. Проверю - доложу.


 
i2e   (2004-04-19 11:30) [7]

Продолжаем разговор.
Теперь написано так:

var
   VolName, FileSystemName : array [0..MAX_PATH-1] of Char;
   SerialNmr               : DWord;
   MaxComponentLength      : DWORD;
   FileSystemFlags         : DWORD;
begin
   GetVolumeInformation("C:\", VolName, MAX_PATH, @SerialNmr, MaxComponentLength, FileSystemFlags, FileSystemName, MAX_PATH);
   Edit1.Text := IntToHex(SerialNmr, 8);


Вроде корректно. НО ПРОБЛЕМА ОСТАЛАСЬ.
Под 95,98 - повторяемость есть, под NT - каждый раз формируется новый номер.
Меня вполне бы устроил номер тома (а не HDD), но стабильно формируемый.

Есть идеи?



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

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

Наверх





Память: 0.46 MB
Время: 0.057 c
4-1081421233
Makhanev A.S.
2004-04-08 14:47
2004.05.23
как отличить системное окно от обычного?


7-1081694079
Evgeniy_K
2004-04-11 18:34
2004.05.23
Путь к Windows


8-1078466211
xex
2004-03-05 08:56
2004.05.23
Подскажите как можно битмап А сравнить с Битмапом Б и отличия


11-1071742891
BaDeVlad
2003-12-18 13:21
2004.05.23
Как в RichEdit изменить WordWrap?


8-1078638004
Nash_AP
2004-03-07 08:40
2004.05.23
Как увеличить/уменьшить яркость TColor?





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