Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.23;
Скачать: CL | DM;

Вниз

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

 
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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.027 c
4-1080892476
MPS
2004-04-02 11:54
2004.05.23
Как работать с XML не пользуясь VCL?


1-1083872000
Lena19
2004-05-06 23:33
2004.05.23
размер буквы


7-1081791170
<DeL.>
2004-04-12 21:32
2004.05.23
Контекстное меню в SysTray


1-1083925902
Unicode
2004-05-07 14:31
2004.05.23
StringToWideChar


1-1083942512
Ivolg
2004-05-07 19:08
2004.05.23
Обои