Постоянный идентификатор системы / процессора, который остается при переустановках и изменениях диска (C #) - PullRequest
3 голосов
/ 07 октября 2010

Я хочу создать уникальный идентификатор для некоторых встроенных систем, которыми я управляю. Системы работают под управлением Windows Embedded 7 Standard и .NET 4.0. Идентификаторы должны:

  • Будьте относительно уникальны - каждая встроенная система работает на одной материнской плате, диске и т. Д., И я не могу столкнуться.
  • Сохраняется при переустановках - эти компьютеры регулярно обновляются с новыми версиями нашего программного обеспечения.
  • Нельзя полагаться на серийный номер диска - мы используем не реальные диски, а CF-карты с адаптером CF на SATA, и CF-карты время от времени меняются местами.

Кроме того, у меня есть несколько сетевых адаптеров в машине, поэтому использование MAC-адреса встроенного сетевого адаптера будет работать только в том случае, если кто-то скажет мне, как определить, какой сетевой адаптер находится на борту по сравнению с устройством USB. После дальнейших исследований кажется, что это невозможно в рамках управляемого кода.

Какой лучший способ сделать это?

1 Ответ

2 голосов
/ 07 октября 2010

Я предлагаю вам использовать WMI для получения информации о ЦП машины, используя класс Win32_Processor .Затем вы можете создать уникальный идентификатор для машины из таких атрибутов, как ProcessorId и UniqueId.

Таким образом, вы будете использовать сам процессор каждой машины в качестве постоянного «хранилища» для идентификатора машины.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...