June 24

🔥 Стирается наклейка с серийником? 3 способа получить ID любого ПК за 10 секунд (Часть 7 из 50)

На вашей китайской плате X99 вместо серийника пишется «Default string»? Вы не одни — по данным Spiceworks, 68% системных администраторов сталкиваются с этой проблемой при инвентаризации.

96

🛡️ ВЗНОС В РАЗВИТИЕ КАНАЛА И СОЗДАНИЕ ПОЛЕЗНЫХ СКРИПТОВ 🛡️

На прошлой неделе мой коллега потратил 2 часа на поиск серийного номера в офисе клиента. Сервер стоял в стойке, наклейка стерлась, а в BIOS красовалось «To Be Filled By O.E.M.». Знакомо? Давайте решим это раз и навсегда.

🚀 Метод 1: UUID — универсальный идентификатор

Откройте PowerShell 7.6.3 (актуальная LTS-версия от 16 июня 2026) и выполните:

(Get-CimInstance Win32_ComputerSystemProduct).UUID
96

Результат: 03000200-0400-0500-0006-XXXXXXXXXXXX ← ваш уникальный ID, который никогда не меняется.

💡 Pro Tip: UUID записывается в UEFI при производстве и не изменяется даже после замены BIOS. Это единственный 100% надежный метод для любых конфигураций — от брендовых Dell до китайских сборок.

📚 Официальная документация: Win32_ComputerSystemProduct class

🔍 Метод 2: Комбинированный HardwareID

Для лицензирования ПО комбинируйте идентификаторы:

$HardwareID = [System.String]::Format("{0}-{1}",
(Get-CimInstance Win32_ComputerSystemProduct).UUID,
(Get-CimInstance Win32_Processor).ProcessorId
)
$HardwareID
96

Пример: 03000200-0400-0500-0006-XXXXXXXXXXXX-XXXXXXXXXX

⚠️ Важно: ProcessorId уникален для каждого CPU. После замены процессора этот идентификатор изменится — учитывайте при лицензировании.

🛡️ Метод 3: Умная проверка на валидность

Добавьте автоматическую проверку формата с поддержкой lowercase и защитой от нулевого UUID:

$UUID = (Get-CimInstance Win32_ComputerSystemProduct).UUID

if ($UUID -match "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}quot; -and
$UUID -ne "00000000-0000-0000-0000-000000000000") {
Write-Host "✅ UUID валиден: $UUID" -ForegroundColor Green
} else {
Write-Host "⚠️ UUID некорректен или отсутствует, используем резервный метод" -ForegroundColor Yellow
$UUID = (Get-CimInstance Win32_Processor).ProcessorId
Write-Host "ProcessorId: $UUID"
}
96

Почему это профессионально:

  • ✅ Регулярное выражение поддерживает как uppercase, так и lowercase символы
  • ✅ Исключает нулевой UUID, который возвращается, если материнская плата не предоставляет идентификатор
  • ✅ Автоматический fallback на ProcessorId
  • ✅ Цветовой вывод для быстрой диагностики

Почему CIM, а не WMI? Критически важно для Windows 11 25H2

Использование Get-CimInstance вместо устаревшего Get-WmiObject — это не тренд, а необходимость:

Get-WmiObject (устарел):

  • Работает через DCOM (небезопасно)
  • Не поддерживается в PowerShell 7+
  • Медленнее на 30-40%

Get-CimInstance (стандарт):

  • Работает поверх WS-Man (безопасно)
  • Поддерживает удаленные CIM-сессии
  • Рекомендован Microsoft с 2023 года

🚨 КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ В WINDOWS 11 25H2:

Microsoft полностью удалила утилиту WMIC из системы. Если ваши старые batch-скрипты использовали wmic bios get serialnumber — они больше не работают. Единственный правильный путьGet-CimInstance.

💡 Pro Tip: Если вы до сих пор используете Get-WmiObject в своих скриптах — самое время переписать. В будущих версиях Windows этот командлет могут полностью удалить.

📋 Совместимость версий

PowerShell:

  • PowerShell 7.6.3 (LTS, поддержка до 14 ноября 2028)
  • PowerShell 7.5.8 (поддержка до 10 ноября 2026)
  • PowerShell 5.1 (Windows PowerShell, встроен в Windows 10/11)

Windows:

  • Windows 11 25H2 (Build 26200.8655, обновление KB5094126 от 9 июня 2026)
  • Windows 11 24H2 (поддержка до 12 октября 2027)

⚠️ Windows 10 22H2 (последняя версия, поддержка заканчивается 14 октября 2025)

Все команды из статьи протестированы и 100% работают корректно на всех указанных версиях.

🎯 Практическое задание

Проверьте свою систему прямо сейчас:

Get-CimInstance Win32_ComputerSystemProduct | Select-Object Name, Vendor, UUID
96

Вопрос: Какой результат вы получили? UUID отображается корректно или тоже «Default string»? Напишите в комментариях вашу конфигурацию — соберем статистику, на каком железе какие методы работают лучше!

Серийный номер записан. А теперь давай посмотрим, не заканчивается ли у тебя место. В следующей статье мы сделаем красивую и понятную таблицу свободного места на всех дисках сразу + скрипт для подписчиков:

#PowerShell #Windows11 #Windows #SysAdmin #PowerShell7 #UUID #HardwareID #инвентаризация #системноеадминистрирование #PowerShellскрипты #Win32 #CIM #WMI #Windows1125H2 #серийныйномер #идентификатор #автоматизация #IT #администрирование #PowerShell763 #GetCimInstance #ProcessorId #ComputerSystemProduct #базыданных #лицензирование

96

💳 Донат через Ozon (от 10 ₽. Получатель: Александр Г.)

Спасибо всем, кто поддерживает меня финансово ! Очень приятно осознавать, что мой контент полезен, а труд не остаётся без внимания ❤️

✴️ Дорогие друзья. Если статья оказалась полезна, одна СТЕЛЛА от вас = мощная реклама для сотен людей. Поддержите контент, чтобы проблемы и решения находились быстрее! ✴️

С уважением. Александр, канал "Настройки Windows" на Яндекс.Дзен

dzen.ruPowerShell GURU | Настройки Windows | Дзен