На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! user posted image
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.

Соблюдайте общие правила форума

Следующие вопросы задаются очень часто, подробно разобраны в FAQ и, поэтому, будут безжалостно удаляться:
1. Преобразовать переменную типа String в тип PChar (PAnsiChar)
2. Как "свернуть" программу в трей.
3. Как "скрыться" от Ctrl + Alt + Del (заблокировать их и т.п.)
4. Как запустить программу/файл? (и дождаться ее завершения)
5. Как перехватить API-функции, поставить hook? (перехват сообщений от мыши, клавиатуры - внедрение в удаленное адресное прстранство)
... (продолжение следует) ...

Внимание:
Попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки - бан.
Мат в разделе - бан на три месяца...

Полезные ссылки:
user posted image MSDN Library user posted image FAQ раздела user posted image Поиск по разделу user posted image Как правильно задавать вопросы


Выразить свое отношение к модераторам раздела можно здесь: user posted image Rouse_, user posted image Krid

Модераторы: Rouse_, Krid
  
> Серийный номер HDD не может быть получен на некоторых ПК
    Добрый день.
    Решил не подымать старые темы, а создать новую.
    Нужно идентифицировать ПК, на котором запущена программа (лицензия).
    В демо провел небольшой сбор информации и понял что привязка к серийнику раздела getVolumeInformation - не вариант, т.к. он у многих попадался одинаковый. Не знаю, может пиратскую винду используют люди которая образом ставится, или просто настолько много коллизий в DWORD значении.

    Код такой же, взят отсюда, это и это прочитал.

    На моем компьютере успешно получены значения sSerialNumber, sFirmwareRev, sModelNumber. WinXP SP3 x86. Рабоает и Scsi0 и PhysicalDrive0.
    Далее проверяю на имеющемся железе - везде облом:
    1. Windows Server 2003 x86 EN + старый винт, возможно без смарта
    2. Windows Server 2003 x86 RU + IDE HDD WD80GB (SMART должен поддерживаться)
    3. Windows XP SP2 x86 + несколько SATA2 HDD - работает \PhysicalDrive0 и \С:
    Везде запускал из под админа.

    Если конкретнее, то CreateFile проходит, а следующий DeviceIoControl обламывается (false), GetLastError пишет отказано в доступе.
    Конечно, вариант пробивать по очереди Scsi0 и при неудаче - PhysicalDrive0, но что делать с теми машинами, на которых не работает никак?

    P.S. другие привязки не подходят, т.к. серийник или ключ Windows в нашей стране "одинаковый" чуть более чем у половины пользователей, getVolumeInformation и MAC адрес спокойно заменяются...
    Сообщение отредактировано: Виталь -
      А если хард поменяли?
        Привязываться лучше к контроллеру жесткого диска (что, собственно винда и делает для привязки к компу). См. параметр реестра
        HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci\Enum\0
        там найдёшь Vendor ID/Device ID контроллера.
          Цитата Krid @
          Привязываться лучше к контроллеру жесткого диска (что, собственно винда и делает для привязки к компу). См. параметр реестра
          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci\Enum\0
          там найдёшь Vendor ID/Device ID контроллера.

          у меня, например, на msahci путь заканчивается.
            Цитата shershen @
            у меня, например, на msahci путь заканчивается

            у меня вообще msahci нет
              Если хард поменяли то запросите другой ключ у автора софта. Общепринятая практика вроде бы.
              Ладно, вроде бы проблема решения не имеет...
              0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
              0 пользователей:


              Рейтинг@Mail.ru
              [ Script execution time: 0,0236 ]   [ 17 queries used ]   [ Generated: 25.04.24, 21:06 GMT ]