![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
Gnusss |
|
||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 19.1.2005 Репутация: нет Всего: нет |
Привет всем.
Появилась проблема с определением уникального для каждого компьютера HardwareID, необходимо для отслеживания установок программы у пользователей. В начале пробовал через, CpuID определять, было что-то типа этого:
Но оно начало выдавать одинаковые ID уже на совсем маленьком (больше 6-ти) количестве пользователей. Дальше попробовал использовать TDiskDriveInfo (Component Version 1.1 - Suite GLib )
К сожалению оно тоже выдаёт одинаковые ID. Собственно вопрос, если ли хоть какой-то способ точно генерировать уникальный HardwareID чтобы в независимости от пере-установок Windows он был одинаковы? |
||||
|
|||||
ZBugz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 636 Регистрация: 15.2.2006 Где: Москва Репутация: 6 Всего: 6 |
Самое простое, это сложи CPUid и HDDid, уже меньше вероятность будет
![]() |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
МАС адрес по идее уникальный.
Но его можно ручками в винде поменять, если знать как. Добавлено @ 12:54 Но если пользователь установит в одной локальной сети одинаковые MAC-адреса для разных компьютеров, то сеть работать не будет. |
|||
|
||||
Gnusss |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 19.1.2005 Репутация: нет Всего: нет |
@ZBugz, да но все же хотелось бы нормального варианта. Вероятность повторений все ровно довольно большая.
@Akella, а MAC адресом это вариант, но что делать если в системе несколько сетевых адаптеров (еще виртуальные например). Ну и плюс что что поменять можно не айс совсем. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
складывай или бери первый попавшийся Добавлено через 24 секунды думаю, что можно как-то определить тип сетевого адаптера: физический или виртуальный |
|||
|
||||
kami |
|
||||||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 23 Всего: 72 |
Потому что плюсовать не надо. 1+2+1+1 = 0+3+2+0, хотя ID разные. Надо переводить в Hex-строку с фиксированным количеством символов и складывать уже строки. Пытался как-то использовать что-то подобное. На первом же компьютере с raid-0 программа зависла. Отказался от этого.
Нет такого. Потому что все железки в компьютере - переменные величины. Например, я поменял CPU на более мощный/такой же, потому что старый сгорел; добавил памяти, доставил/заменил винчестер... Кроме того, Вашу программу можно запустить на VirtualBox|VMWare - а там вообще ни одной "реальной" железки нет.
Думаю, нельзя (хотя, могу ошибаться) - любая программа пользовательского режима взаимодействует с железкой через драйвер. И если последний грамотно написан, то отличить не получится. |
||||||
|
|||||||
Gnusss |
|
||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 19.1.2005 Репутация: нет Всего: нет |
Хм... действительно, это интересный вариант. Не знаешь все-таки насколько CpuID будет уникальный?
Оно еще и требует чтобы какой-то там сервис в системе был включен, а некоторые его отключают типа ради быстродействия. Ну мне то в принципе не важно это, навряд ли кто-то будет запускать эту программу на виртуалке. Мне нужен уникальный ID только для подсчета уникальных пользователей и сбора прочей статистики. А замена CPU разве не повлечет за собой пере-установку системы и прочие радости, так что это будет уже другой комп. |
||||
|
|||||
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 8 Всего: 20 |
А вот это уже интересно. Зачем "сбор статистики" производить незаметно для пользователя? -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
Gnusss |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 19.1.2005 Репутация: нет Всего: нет |
@northener, а кто сказал что не заметно? Пользователи знают что статистика собирается, об этом написано раз - в лицензионном соглашении (которое они 100% увидят при первом запуске) и два - при первоначальной настройке когда пользователь вводит свое имя (которое тоже идет в статистику).
Это сообщение отредактировал(а) Gnusss - 14.6.2011, 06:15 |
|||
|
||||
Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 4 Всего: 28 |
По статистике, на чтение лицензионного соглашения в России уходит не более 3 секунд -------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
Gnusss |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 19.1.2005 Репутация: нет Всего: нет |
||||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |