У меня проблема, потому что я пытаюсь развернуть скрипт, в котором перечислены основные данные ПК, но, к сожалению, я не могу получить лицензионный ключ. Все компьютеры в компании (кроме IT) используют Windows 7 Pro и имеют powershell v 2.0. Мне нужно получить лицензионный ключ, но не имею никаких идей. Я попытался пойти cmd, а затем "Wmic Path SoftwareLicensingService получить OA3xOriginalProductKey", но это не работает. Предложения?
1 ответ
0
Один из прошлого.
Как получить ключ продукта Windows без использования стороннего программного обеспечения
Если вы потеряли, не можете найти или забыли, где вы хранили ключ продукта вашей ОС Windows 8.1, Windows 8 или Windows 7, не отчаивайтесь. Я хотел бы показать вам простое решение для извлечения ключа продукта из ОС, установленной на вашем ПК, без использования стороннего программного обеспечения.
function Get-WindowsKey
{
## function to retrieve the Windows Product Key from any PC
## by Jakob Bindslet (jakob@bindslet.dk)
param ($targets = ".")
$hklm = 2147483650
$regPath = "Software\Microsoft\Windows NT\CurrentVersion"
$regValue = "DigitalProductId"
Foreach ($target in $targets) {
$productKey = $null
$win32os = $null
$wmi = [WMIClass]"\\$target\root\default:stdRegProv"
$data = $wmi.GetBinaryValue($hklm,$regPath,$regValue)
$binArray = ($data.uValue)[52..66]
$charsArray = "B","C","D","F","G","H","J","K","M","P","Q","R","T","V","W","X","Y","2","3","4","6","7","8","9"
## decrypt base24 encoded binary data
For ($i = 24; $i -ge 0; $i--) {
$k = 0
For ($j = 14; $j -ge 0; $j--) {
$k = $k * 256 -bxor $binArray[$j]
$binArray[$j] = [math]::truncate($k / 24)
$k = $k % 24
}
$productKey = $charsArray[$k] + $productKey
If (($i % 5 -eq 0) -and ($i -ne 0)) {
$productKey = "-" + $productKey
}
}
$win32os = Get-WmiObject Win32_OperatingSystem -computer $target
$obj = New-Object Object
$obj | Add-Member Noteproperty Computer -value $target
$obj | Add-Member Noteproperty Caption -value $win32os.Caption
$obj | Add-Member Noteproperty CSDVersion -value $win32os.CSDVersion
$obj | Add-Member Noteproperty OSArch -value $win32os.OSArchitecture
$obj | Add-Member Noteproperty BuildNumber -value $win32os.BuildNumber
$obj | Add-Member Noteproperty RegisteredTo -value $win32os.RegisteredUser
$obj | Add-Member Noteproperty ProductID -value $win32os.SerialNumber
$obj | Add-Member Noteproperty ProductKey -value $productkey
$obj
}
}