Я использовал код от http://www.rgagnon.com/javadetails/java-0580.html, чтобы получить идентификатор материнской платы, но результат «null».Как получить идентификатор процессора и материнской платы?
Как это может быть?
Также я изменил код немного, чтобы посмотреть, как это, чтобы получить ProcessorId:
"Set objWMIService = GetObject(\"winmgmts:\\\\.\\root\\cimv2\")\n"+ "Set colItems = objWMIService.ExecQuery _ \n"+ " (\"Select * from Win32_Processor\") \n"+ "For Each objItem in colItems \n"+ " Wscript.Echo objItem.ProcessorId \n"+ " exit for ' do the first cpu only! \n"+ "Next \n";
В результате получается что-то вроде: ProcessorId = BFEBFBFF00010676
На http://msdn.microsoft.com/en-us/library/aa389273%28VS.85%29.aspx он говорит:
Процессор: Информация о процессоре который описывает функции процессора. Для процессора класса x86 формат поля зависит от поддержки процессором команды CPUID. Если инструкция поддерживается, свойство содержит 2 (два) формата в формате DWORD. Первый - это смещение 08h-0Bh, которое является значением EAX, которое возвращает команда CPUID с входным EAX, установленным в 1. Второй - смещение 0Ch-0Fh, которое является значением EDX, которое возвращает инструкция. Только первые два байта свойства являются значимыми и содержат содержимое регистра DX при перезагрузке CPU - все остальные установлены в 0 (ноль), а содержимое находится в формате DWORD.
Я не совсем понимаю; на простом английском языке, является ли он уникальным или просто номером для этого класса процессоров, например, у всех Intel Core2 Duo P8400 будет этот номер?