Содержание:
Вариант 1: Активация слетела из-за сбоя, переустановки или обновления ОС
Если ключ активации был утерян вследствие программных неполадок, например после установки обновлений, то восстановить его можно, но для этого потребуется его узнать. Чтобы повторно активировать Windows 10, достаточно ввести найденную комбинацию в соответствующем разделе «Параметров».
Подробнее: Активация операционной системы Windows 10
В некоторых случаях, когда произошел сбой в работе системы, может помочь ее откат к предыдущему состоянию, то есть до того момента, когда была обнаружена проблема.
Читайте также: Откат к точке восстановления в Windows 10
Способ 1: Сторонняя утилита
Для начала мы разберем способ с использованием сторонней программы, поскольку он довольно простой и требует минимум манипуляций. Одной из самых надежных и эффективных утилит является ShowKeyPlus, которая распространяется на бесплатной основе и позволяет в несколько кликов посмотреть код активации Windows различных версий.
Скачайте и запустите утилиту. Она не требует инсталляции, поэтому сразу откроется ее окно с нужной информацией. Помимо кода лицензии установленной системы («Installed Key») отобразится и ключ в UEFI («OEM Key»).
Отображенные сведения можно сохранить в текстовом варианте, кликнув по кнопке «Save».
Читайте также: Другие программы для просмотра кода активации в Windows 10
Способ 2: VBS-скрипт
Если вы не доверяете сторонним программам, то в системе есть возможность создать специальный скрипт Visual Basic Script (VBS), который в системном окне отобразит ключ лицензионного продукта Windows 10.
- Запустите штатный «Блокнот», отыскав его через поисковую строку «Пуска».
- Вставьте следующие строки:
Set WshShell = CreateObject("WScript.Shell")
regKey = "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\"
DigitalProductId = WshShell.RegRead(regKey & "DigitalProductId")
Win10ProductName = "Версия Windows 10: " & WshShell.RegRead(regKey & "ProductName") & vbNewLine
Win10ProductID = "ID продукта: " & WshShell.RegRead(regKey & "ProductID") & vbNewLine
Win10ProductKey = ConvertToKey(DigitalProductId)
ProductKeyLabel ="Ключ Windows 10: " & Win10ProductKey
Win10ProductID = Win10ProductName & Win10ProductID & ProductKeyLabel
MsgBox(Win10ProductID)
Function ConvertToKey(regKey)
Const KeyOffset = 52
isWin10 = (regKey(66) \ 6) And 1
regKey(66) = (regKey(66) And &HF7) Or ((isWin10 And 2) * 4)
j = 24
Chars = "BCDFGHJKMPQRTVWXY2346789"
Do
Cur = 0
y = 14
Do
Cur = Cur * 256
Cur = regKey(y + KeyOffset) + Cur
regKey(y + KeyOffset) = (Cur \ 24)
Cur = Cur Mod 24
y = y -1
Loop While y >= 0
j = j -1
winKeyOutput = Mid(Chars, Cur + 1, 1) & winKeyOutput
Last = Cur
Loop While j >= 0
If (isWin10 = 1) Then
keypart1 = Mid(winKeyOutput, 2, Last)
insert = "N"
winKeyOutput = Replace(winKeyOutput, keypart1, keypart1 & insert, 2, 1, 0)
If Last = 0 Then winKeyOutput = insert & winKeyOutput
End If
a = Mid(winKeyOutput, 1, 5)
b = Mid(winKeyOutput, 6, 5)
c = Mid(winKeyOutput, 11, 5)
d = Mid(winKeyOutput, 16, 5)
e = Mid(winKeyOutput, 21, 5)
ConvertToKey = a & "-" & b & "-" & c & "-" & d & "-" & e - Далее нужно сохранить документ. Кликните по вкладке «Файл» и выберите пункт «Сохранить как».
- Задайте имя будущему скрипту, в конце дописав
.vbs
. В меню «Тип файла» выберите «Все файлы» и сохраните документ.
После того как VBS-скрипт создан, двойным щелчком ЛКМ запустите его. На окне отобразится системное окошко с информацией об операционной системе, включая ключ Windows 10.
Чтобы третьи лица не заполучили информацию из скрипта, после просмотра ключа, не забудьте его полностью удалить. Некоторые вирусные утилиты способы запустить его, затем отправить данные возможным злоумышленникам.
Способ 3: «Windows PowerShell»
Еще один способ также предполагает использование встроенных возможностей. Он подойдет, если предыдущий скрипт не сработал. Здесь можно воспользоваться консолью «Windows PowerShell». Но здесь не все так просто: специальной команды, выполнение которой привело бы к отображению ключа активации, нет. Но есть такая, которая показывает ключ из UEFI, но, как правило, для восстановления нужен именно тот код, отличающийся от предустановленного.
В таком случае потребуется создать специальный текстовый файл с расширением PS1, затем осуществить его запуск из интерфейса консоли:
- Скопируйте следующий код и вставьте его в окно штатного «Блокнота»:
#Main function
Function GetWin10Key
{
$Hklm = 2147483650
$Target = $env:COMPUTERNAME
$regPath = "Software\Microsoft\Windows NT\CurrentVersion"
$DigitalID = "DigitalProductId"
$wmi = [WMIClass]"\\$Target\root\default:stdRegProv"
#Get registry value
$Object = $wmi.GetBinaryValue($hklm,$regPath,$DigitalID)
[Array]$DigitalIDvalue = $Object.uValue
#If get successed
If($DigitalIDvalue)
{
#Get producnt name and product ID
$ProductName = (Get-itemproperty -Path "HKLM:Software\Microsoft\Windows NT\CurrentVersion" -Name "ProductName").ProductName
$ProductID = (Get-itemproperty -Path "HKLM:Software\Microsoft\Windows NT\CurrentVersion" -Name "ProductId").ProductId
#Convert binary value to serial number
$Result = ConvertTokey $DigitalIDvalue
$OSInfo = (Get-WmiObject "Win32_OperatingSystem" | select Caption).Caption
If($OSInfo -match "Windows 10")
{
if($Result)
{
[string]$value ="ProductName : $ProductName `r`n" `
+ "ProductID : $ProductID `r`n" `
+ "Installed Key: $Result"
$value
#Save Windows info to a file
$Choice = GetChoice
If( $Choice -eq 0 )
{
$txtpath = "C:\Users\"+$env:USERNAME+"\Desktop"
New-Item -Path $txtpath -Name "WindowsKeyInfo.txt" -Value $value -ItemType File -Force | Out-Null
}
Elseif($Choice -eq 1)
{
Exit
}
}
Else
{
Write-Warning "Запускайте скрипт в Windows 10"
}
}
Else
{
Write-Warning "Запускайте скрипт в Windows 10"
}
}
Else
{
Write-Warning "Возникла ошибка, не удалось получить ключ"
}
}
#Get user choice
Function GetChoice
{
$yes = New-Object System.Management.Automation.Host.ChoiceDescription "&Yes",""
$no = New-Object System.Management.Automation.Host.ChoiceDescription "&No",""
$choices = [System.Management.Automation.Host.ChoiceDescription[]]($yes,$no)
$caption = "Подтверждение"
$message = "Сохранить ключ в текстовый файл?"
$result = $Host.UI.PromptForChoice($caption,$message,$choices,0)
$result
}
#Convert binary to serial number
Function ConvertToKey($Key)
{
$Keyoffset = 52
$isWin10 = [int]($Key[66]/6) -band 1
$HF7 = 0xF7
$Key[66] = ($Key[66] -band $HF7) -bOr (($isWin10 -band 2) * 4)
$i = 24
[String]$Chars = "BCDFGHJKMPQRTVWXY2346789"
do
{
$Cur = 0
$X = 14
Do
{
$Cur = $Cur * 256
$Cur = $Key[$X + $Keyoffset] + $Cur
$Key[$X + $Keyoffset] = [math]::Floor([double]($Cur/24))
$Cur = $Cur % 24
$X = $X - 1
}while($X -ge 0)
$i = $i- 1
$KeyOutput = $Chars.SubString($Cur,1) + $KeyOutput
$last = $Cur
}while($i -ge 0)$Keypart1 = $KeyOutput.SubString(1,$last)
$Keypart2 = $KeyOutput.Substring(1,$KeyOutput.length-1)
if($last -eq 0 )
{
$KeyOutput = "N" + $Keypart2
}
else
{
$KeyOutput = $Keypart2.Insert($Keypart2.IndexOf($Keypart1)+$Keypart1.length,"N")
}
$a = $KeyOutput.Substring(0,5)
$b = $KeyOutput.substring(5,5)
$c = $KeyOutput.substring(10,5)
$d = $KeyOutput.substring(15,5)
$e = $KeyOutput.substring(20,5)
$keyproduct = $a + "-" + $b + "-"+ $c + "-"+ $d + "-"+ $e
$keyproduct - Сохраните файл. В новом окне задайте имя файлу, дописав в конце
.ps1
. Например, это будет выглядеть так:keywin10.ps1
. В строке «Тип файла» из выпадающего меню выберите «Все файлы» и сохраните документ. - Щелкните правой кнопкой мыши по значку «Пуск» и выберите запуск «Windows PowerShell» от имени администратора.
- В окне консоли вставьте команду
Set-ExecutionPolicy RemoteSigned
и нажмите на клавишу «Enter». Будет предложено подтвердить операцию. Нажмите на клавишу «Y», затем снова на ввод. - В следующей строке введите путь к созданному в предыдущих шагах файлу, а также его имя. В нашем случае это
C:\Users\Username\Documents\keywin10.ps1
. Нажмите на «Enter». - Ниже отобразится информация о версии системы. Чтобы посмотреть ключ для последующей активации, обратите внимание на строчку «Installed Key». Верните политику выполнения скриптов, прописав
Set-ExecutionPolicy restricted
и нажав на клавишу ввода.
Данный способ довольно затратный по времени, но при этом он эффективный и безопасный, поскольку некоторые непроверенные утилиты от других разработчиков могут отправлять найденную информацию третьим лицам.
Вариант 2: Произошла замена комплектующих
После замены некоторых комплектующих, например материнской платы, также может слететь лицензия в Windows 10. В отличие от «семерки», где можно было вводить код неограниченное количество раз, в этой ОС все намного сложнее, поскольку лицензия присваивается не только юзеру, но и самому компьютеру. Кроме того, ПК получается еще и ID, который связан непосредственно с «железом». Если произошла замена комплектующих, то идентификатор также перестанет действовать, а пользователь должен доказать, что был ремонт или апгрейд, а не покупка нового устройства.
Сейчас у Microsoft действует принцип облачной лицензии — вы должны создать фирменный аккаунт на компьютере, к которому и будет привязан активационный ключ. Затем, после замены оборудования достаточно воспользоваться встроенным в ОС средством устранения неполадок. Более детально об этом написано в статьях по ссылкам ниже. Даже если вы меняли не материнку, инструкция далее все равно подойдет.
Подробнее:
Замена материнской платы без переустановки Windows 10 (Шаги 2 и 5)
Что такое цифровая лицензия Windows 10
Если вы заранее не создали свой аккаунт в системе Майкрософт, то, чтобы восстановить ключ активации в Windows 10 после замены комплектующих, скорее всего, придется обратиться за помощью к службе поддержки Microsoft. На момент написания статьи она еще функционирует на территории России, поэтому можно попробовать обратиться за помощью к специалистам. Для этого предусмотрен бесплатный номер 8-800-200-8001.
Читайте также: Причины, по которым Windows 10 не активируется
Наш Telegram каналТолько полезная информация
Если пишите скрипты, то пишите полностью, а не забывая окончание или половину…
Большое СПАСИБО! Всё чётко, ясно и абсолютно информативно.