Главная страница
    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.031 c
3-1083154655
Slon_SCG
2004-04-28 16:17
2004.05.23
Кто-нибудь пробовал восстанавливать удаленные записи?


1-1083758296
Семен Сорокин
2004-05-05 15:58
2004.05.23
Окна сверху вниз/слева направо


1-1083736815
magician
2004-05-05 10:00
2004.05.23
Что Не Так.textout(b.handle,10,20, hello Word ,30)


1-1084346469
DimonNew
2004-05-12 11:21
2004.05.23
RenameFile


1-1083964926
MAXHO-2
2004-05-08 01:22
2004.05.23
Как перехватить закрытие главного окна?





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