Как найти лицензионный ключ с помощью CMD или powershell без обновления powershell до версии 3.0 [закрыто]

У меня проблема, потому что я пытаюсь развернуть скрипт, в котором перечислены основные данные ПК, но, к сожалению, я не могу получить лицензионный ключ. Все компьютеры в компании (кроме ИТ) используют Windows 7 Pro и имеют powershell v 2.0. Мне нужно получить лицензионный ключ, но нет никаких идей. Я попытался пойти cmd, а затем "wmic path softwarelicensingservice get OA3xOriginalProductKey", но это не работает.
Предложения?

20
задан Filip Cieślik
22.03.2023 1:17 Количество просмотров материала 2905
Распечатать страницу

1 ответ

один из прошлого.

как получить ключ продукта 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
    }
}
0
отвечен postanote 2023-03-23 09:05

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя

Похожие вопросы про тегам:

command-line
license
powershell
windows
windows-7
Вверх