Сведения о системе.

Темы связанные с инженерными разработками, но не подходящие в другие ветки форума
Аватара пользователя
Sergey Ivanov

Activity Professionalism Gold Автор
expert
expert
Сообщения: 1217
Зарегистрирован: 01 мар 2009, 20:54
Награды: 5
Версия LabVIEW: 2018
Откуда: Санкт-Петербург, Кронштадт
Благодарил (а): 11 раз
Поблагодарили: 1 раз
Контактная информация:

Сведения о системе.

Сообщение Sergey Ivanov »

Всем привет!
Кто-нибудь знает как получить сведения о системе ?
Интересуют уникальные данные о системе и комплектующих ( о материнской плате). Хочу сделать привязку программы к конкретному оборудованию, чтобы на других компьютерах невозможно было использовать программу.

Спасибо !
Добро пожаловать на http://rk-stud.ru/
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Сведения о системе.

Сообщение Borjomy_1 »

Можно запускать ipconfig и выдирать оттуда мак адреса сетевых плат
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Сведения о системе.

Сообщение dadreamer »

Аватара пользователя
Sergey Ivanov

Activity Professionalism Gold Автор
expert
expert
Сообщения: 1217
Зарегистрирован: 01 мар 2009, 20:54
Награды: 5
Версия LabVIEW: 2018
Откуда: Санкт-Петербург, Кронштадт
Благодарил (а): 11 раз
Поблагодарили: 1 раз
Контактная информация:

Re: Сведения о системе.

Сообщение Sergey Ivanov »

Borjomy_1 писал(а):Можно запускать ipconfig и выдирать оттуда мак адреса сетевых плат
Да, работает этот метод.
Но, пока не хочется привязываться к сетевой карте. В идеале хотелось бы получить данные о материнской памяти.
Попробовал, открывается окно.

Код: Выделить всё

msinfo32 /pch
В случае экспорта

Код: Выделить всё

msinfo32 /report C:\TEST.NFO
Процесс занимает значительное время и не годится для этого способа.
Добро пожаловать на http://rk-stud.ru/
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Сведения о системе.

Сообщение dadreamer »

Тогда попробуйте WMI: WMI Code Creator v1.0. С помощью софтины подберите подходящий класс и свойства. Потом выполните команду в cmd, например, для получения имён всех дисков в системе:

Код: Выделить всё

wmic path Win32_DiskDrive get Caption
Аватара пользователя
Sergey Ivanov

Activity Professionalism Gold Автор
expert
expert
Сообщения: 1217
Зарегистрирован: 01 мар 2009, 20:54
Награды: 5
Версия LabVIEW: 2018
Откуда: Санкт-Петербург, Кронштадт
Благодарил (а): 11 раз
Поблагодарили: 1 раз
Контактная информация:

Re: Сведения о системе.

Сообщение Sergey Ivanov »

Спасибо большое !
Нашёл то что нужно

Код: Выделить всё

WMIC PATH Win32_BaseBoard GET SerialNumber
Добро пожаловать на http://rk-stud.ru/
bartex
user
user
Сообщения: 73
Зарегистрирован: 14 апр 2014, 21:09
Версия LabVIEW: 2015
Откуда: Санкт-Петербург

Re: Сведения о системе.

Сообщение bartex »

dadreamer
"Тогда попробуйте WMI"
И кстати, в теме http://www.labviewportal.org/viewtopic. ... mic#p62652 Mephistt предложил тестовую програмку для проверки команд "WMIC" в System Exec. Я её немного изменил так, чтобы можно было вводить несколько команд и видеть результат на экране. Мне в своё время сильно помогло при ознакомлении с WMI
Вложения
wmic - для набора команд.vi
(19.5 КБ) 158 скачиваний
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Сведения о системе.

Сообщение dadreamer »

bartex
Сейчас уже не помню, с чем была связана необходимость записи в текстовый файл. Но в настоящее время это, на мой взгляд, излишне. Можно сразу распарсить вывод System Exec / ShellExecute - будет быстрее, нежели запись в файл и последующее чтение из файла. Только перед парсингом следует прогнать вывод через OemToChar, чтобы русские имена корректно отображались:
Вложения
OemToChar.png
OemToChar.vi
lv2010
(12.04 КБ) 154 скачивания
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Сведения о системе.

Сообщение Borjomy_1 »

Хм... все прочитал, но способа увидеть серийный номер материнской платы или сетевых не нашел.
WMIC PATH Win32_BaseBoard GET SerialNumber
выдает
SerialNumber

To be filled by O.E.M.
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Сведения о системе.

Сообщение dadreamer »

Borjomy_1 писал(а):Хм... все прочитал, но способа увидеть серийный номер материнской платы или сетевых не нашел.
WMIC PATH Win32_BaseBoard GET SerialNumber
выдает
SerialNumber

To be filled by O.E.M.
Производитель материнки не удосужился заполнить эти поля чем-то осмысленным. У меня на рабочей машине то же самое выдаёт. Для уверенности можно ещё в dxdiag посмотреть, или в сторонних утилитах типа Speccy. Но, полагаю, везде будет то же самое. Потому, лучше привязываться к серийнику процессора, жёсткого диска или BIOS.
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Сведения о системе.

Сообщение Borjomy_1 »

Потому, лучше привязываться к серийнику процессора, жёсткого диска или BIOS.
К жесткому диску лучше не привязываться.... Уж больно ненадежная деталь, которую в условиях производства часто меняют. А вот во встраиваемых системах проц распаян на плате, что эквивалентно самой материнке. Отсель вопрос: а как заполучить серийный номер процессора?
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Сведения о системе.

Сообщение dadreamer »

Borjomy_1 писал(а):Отсель вопрос: а как заполучить серийный номер процессора?

Код: Выделить всё

wmic cpu get ProcessorId

Код: Выделить всё

wmic path Win32_Processor get ProcessorID
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Сведения о системе.

Сообщение Borjomy_1 »

Код: Выделить всё

wmic cpu get ProcessorId
Спасибо ))
Аватара пользователя
Sergey Ivanov

Activity Professionalism Gold Автор
expert
expert
Сообщения: 1217
Зарегистрирован: 01 мар 2009, 20:54
Награды: 5
Версия LabVIEW: 2018
Откуда: Санкт-Петербург, Кронштадт
Благодарил (а): 11 раз
Поблагодарили: 1 раз
Контактная информация:

Re: Сведения о системе.

Сообщение Sergey Ivanov »

dadreamer писал(а):
Borjomy_1 писал(а):Отсель вопрос: а как заполучить серийный номер процессора?

Код: Выделить всё

wmic cpu get ProcessorId

Код: Выделить всё

wmic path Win32_Processor get ProcessorID

Только это не серийный номер.

Попробовал на двух разных компьютерах запустить и вот что вышло из этого.
вариант 1.jpg
вариант 2.jpg
Это, скорее, всего, ID, который у одинаковых моделей процессоров одинаковый.
Добро пожаловать на http://rk-stud.ru/
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Сведения о системе.

Сообщение dadreamer »

Sergey Ivanov писал(а):Это, скорее, всего, ID, который у одинаковых моделей процессоров одинаковый.
Похоже на то. ) А серийника у него вовсе нет как свойства.

Код: Выделить всё

wmic cpu get >cpu.txt
На моём компе серийник материнки есть, а серийник BIOS'а содержит "System Serial Number". Вот и думай, к чему привязываться. :D
Из того, что я на практике встречал в разном софте, используется привязка сразу к нескольким девайсам, комбинированная с датой/временем установки, произвольными константами и пошифрованная через MD5, например. Такой механизм даёт намного больше уверенности в уникальности железа, нежели привязка к одному только процессору/hdd/материнке.
Ответить

Вернуться в «Общие»