Как извлечь ключ продукта Microsoft Office без сторонних программных обеспечений

Автор:
Nurlan Kemelbekov

Если вы потеряли ключ продукта Microsoft Office или забыли, где хранили его, не отчаивайтесь. Я хотел бы поделиться простым решением, чтобы извлечь ключа продукта Microsoft Office операционной системы, установленной на компьютере без стороннего программного обеспечения.

Откройте Блокнот.
Скопируйте и вставьте следующий текст в окно Блокнот:

function Get-MSOfficeProductKey {
    param(
    [string[]]$computerName = "."
    )

    $product = @()
    $hklm = 2147483650
    $path = "SOFTWARE\Microsoft\Office"

    foreach ($computer in $computerName) {

        $wmi = [WMIClass]"\\$computer\root\default:stdRegProv"

        $subkeys1 = $wmi.EnumKey($hklm,$path)
        foreach ($subkey1 in $subkeys1.snames) {
            $subkeys2 = $wmi.EnumKey($hklm,"$path\$subkey1")
            foreach ($subkey2 in $subkeys2.snames) {
                $subkeys3 = $wmi.EnumKey($hklm,"$path\$subkey1\$subkey2")
                foreach ($subkey3 in $subkeys3.snames) {
                    $subkeys4 = $wmi.EnumValues($hklm,"$path\$subkey1\$subkey2\$subkey3")
                    foreach ($subkey4 in $subkeys4.snames) {
                        if ($subkey4 -eq "digitalproductid") {
                            $temp = "" | select ComputerName,ProductName,ProductKey
                            $temp.ComputerName = $computer
                            $productName = $wmi.GetStringValue($hklm,"$path\$subkey1\$subkey2\$subkey3","productname")
                            $temp.ProductName = $productName.sValue

                            $data = $wmi.GetBinaryValue($hklm,"$path\$subkey1\$subkey2\$subkey3","digitalproductid")
                            $valueData = ($data.uValue)[52..66]

                            # decrypt base24 encoded binary data 
                            $productKey = ""
                            $chars = "BCDFGHJKMPQRTVWXY2346789"
                            for ($i = 24; $i -ge 0; $i--) { 
                                $r = 0 
                                for ($j = 14; $j -ge 0; $j--) { 
                                    $r = ($r * 256) -bxor $valueData[$j] 
                                    $valueData[$j] = [math]::Truncate($r / 24)
                                    $r = $r % 24 
                                } 
                                $productKey = $chars[$r] + $productKey 
                                if (($i % 5) -eq 0 -and $i -ne 0) { 
                                    $productKey = "-" + $productKey 
                                } 
                            } 
                            $temp.ProductKey = $productKey
                            $product += $temp
                        }
                    }
                }
            }
        }
    }
    $product
}

Сохранить текст выше в файл с “.ps1” расширением на рабочем столе.
Дополнительный совет: Для того, чтобы убедиться, что вы сохраните файл корректно с расширением “.ps1”, вы можете ввести его имя в двойных кавычках, например, ’office.ps1‘.

Теперь вы должны определить 32-разрядная версия или 64-разрядная. Если у вас стоит Office 2007, 2003 или более ранние версии, то у вас 32-битная версия, т.к. нет 64-разрядной версии. Кроме того, если Windows 32-разрядная, то офис также 32-разрядный, так как 64-разрядные приложения не могут работать на 32-битной Windows.
Если 64-битный Windows и Office 2010, 2013 или 2016 года, он может быть, либо 32-разрядной или 64-бит. Чтобы определить это, запустите любое приложение Office, как Word, OneNote, Excel и т.д.
Откройте меню Файл в левом верхнем углу и выберите из списка в левой части экрана раздел Справка. В разделе Сведения о продукте вы увидите в списке 32-разрядная или 64-разрядная.

Теперь вы должны открыть Powershell от имени администратора. Если используется 32-разрядный Office, откройте 32-разрядную версию PowerShell. Если работаете в 64-разрядной Office, открыть 64-разрядную версию PowerShell. Введите “PowerShell” в поле поиска в меню Пуск. На 64-битной Windows ярлык с именем “Windows PowerShell (x86)” — 32-разрядная версия PowerShell и без “x86” в названии – 64 разрядная версия PowerShell. Щелкните правой кнопкой мыши и выберите “Запуск от имени администратора” или выбрать правильный ярлык и используйте комбинацию клавиш CTRL + SHIFT + Enter. При этом откроется окно PowerShell с повышенными привилегиями.

Включить выполнение локальных файлов, которые не подписаны цифровой подписью. Это можно сделать с помощью следующей команды (вы можете скопировать и вставить его):
Set-ExecutionPolicy RemoteSigned
Нажмите Enter, чтобы изменить политику выполнения.

Windows 7_1

Кликните на картинку, чтобы увеличить изображение

Теперь нужно ввести следующую команду:
Import-Module C: \ Users \ NKK \ Desktop \ office.ps1; Get-MSOfficeProductKey
Примечание: Вы должны изменить путь в команде выше, в том числе имя пользователя, чтобы правильно указать место, где был сохранен файл office.ps1.

Windows 7_1

Добавить в контекстное меню создать пакетный файл bat

Вот и все, ключ продукта Офис будет отображаться на экране! Этот сценарий был найден в просторах Интернета на одном из англоязычных сайтов, который в свою очередь ссылается на третье лицо, являющееся его читателем.



Рекомендуемый контент

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

* Copy This Password *

* Type Or Paste Password Here *

4 × 4 =

Я просто хотел сказать, как сильно я ценю Ваш комментарий на мой пост. Спасибо Вам !!