Как узнать ключ установки Windows
Как узнать ключ установки Windows
Большинство современных компьютеров поставляются с уже предустановленной операционной системой Windows. При этом, как правило, на корпус наклеивается бумажка с ключом продукта или же в комплекте идет установочный диск, на котором этот ключ указан. В случае переустановки системы или обновления до более новой, инсталлятор обязательно будет запрашивать этот ключ. Но наклейка может оторваться в процессе эксплуатации, установочный диск потеряться, да мало ли что может произойти. В конце концов это запросто может оказаться компьютер, на котором систему ставили давно, и контакта со специалистом, выполнявшим настройку, уже нет. В рабочей системе ключ хранится в реестре в зашифрованном виде. Для восстановления ключа установки Windows можно воспользоваться какой-нибудь специализированной программой, например, Product Key Explorer или аналогичной, а можно воспользоваться скриптом на Visual Basic. Его преимущество в том, что он занимает совсем чуть-чуть места и не надо устанавливать никаких программ, ведь для выполнения скрипта достаточно интерпретатора, встроенного в систему.
Скопируйте приведенный ниже текст скрипта в Блокнот и сохраните в файл с любым именем, но обязательно с расширением "VBS". Запустите готовый скрипт двойным кликом на сохраненном файле.
Set WshShell = CreateObject("WScript.Shell")
regKey = "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\"
DigitalProductId = WshShell.RegRead(regKey & "DigitalProductId")
WinProductName = "Windows Product Name: " & _
WshShell.RegRead(regKey & "ProductName") & vbNewLine
WinProductID = "Windows Product ID: " & _
WshShell.RegRead(regKey & "ProductID") & vbNewLine
WinProductKey = ConvertToKey(DigitalProductId)
strProductKey ="Windows Key: " & WinProductKey
WinProductID = WinProductName & WinProductID & strProductKey
MsgBox(WinProductID)
Function ConvertToKey(regKey)
Const KeyOffset = 52
isWin8 = (regKey(66) \ 6) And 1
regKey(66) = (regKey(66) And &HF7) Or ((isWin8 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 (isWin8 = 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
End Function
В приложении готовый скрипт на Visual Basic, который показывает версию установленной системы Windows и ключ установки. Просто распакуйте архив и запустите скрипт, нужные данные будут показаны в окне сообщения.
Просмотров: 9026 | Комментариев: 26
Внимание! Статья опубликована больше года назад, информация могла устареть!
Комментарии
Отзывы посетителей сайта о статье
ManHunter
(25.09.2017 в 23:35):
Всё показывает, и SID, и прочую инфу.
Kemper
(25.09.2017 в 23:32):
хмм - а whoami /all в cmd тоже ничего не кажет ?
ManHunter
(25.09.2017 в 15:32):
GetSIDGUI.exe фатально падает на моей Win7
Kemper
(25.09.2017 в 15:17):
по поводу SID - нашел прикольную весч https://gallery.technet.micros...-To-68a69e3f
ManHunter
(10.07.2015 в 15:58):
Про сохранение в файл Vnvvnv ниже написал. А про SID я хз где оно в реестре обитает. Но потом можно будет добавить
и дальше по аналогии в файл или в мессаджбокс. Код же элементарный.
и дальше по аналогии в файл или в мессаджбокс. Код же элементарный.
Kemper
(10.07.2015 в 15:03):
Димыч - а можно еще SID чтоб казало ? - и не в окно а в txt выводило - будет для инвентаризации незаменимая весч)
Vnvvnv
(27.06.2015 в 19:15):
boozer, Имелось ввиду, что не сохраняет в том месте, откуда скрипт вытаскивает инфу.
boozer
(27.06.2015 в 14:05):
Vnvvnv
Система эти ключи сохраняет. Иначе бы они не вытаскивались сторонним софтом.
rar.
Я уже отвечал на подобные замечания. В определенных не совсем оригинальных системах ключи активации в открытом незашифрованном виде. В моём случае конкретно Win 7 Prof х64, Win 7 Ent х64, Win 2008 Ent x64 ключи этим скриптом не показываются.
Система эти ключи сохраняет. Иначе бы они не вытаскивались сторонним софтом.
rar.
Я уже отвечал на подобные замечания. В определенных не совсем оригинальных системах ключи активации в открытом незашифрованном виде. В моём случае конкретно Win 7 Prof х64, Win 7 Ent х64, Win 2008 Ent x64 ключи этим скриптом не показываются.
rar
(26.06.2015 в 00:17):
7x64 запустил прямо из архива, скрипт показал все
Vnvvnv
(25.06.2015 в 13:29):
BBBBB-...-BBBBB - это значит активировано МАК ключем, эти ключи система не сохраняет.
boozer
(24.06.2015 в 07:25):
hatmaster
запускаю на нескольких десятках машин админом, контроль учеток выключен. сервера так же отвечают ВВВшками. Скорее всего твоя сборка распилена и исковеркана в плане доступа к реестру. нормальные системы х64 не отдают зашифрованный ключ. Я пока нашел только одну программу с труднопроизносимым немецким названием, которая это делает, только с доменным запуском еще не разобрался у нее, денег хочет за сетевой вариант
запускаю на нескольких десятках машин админом, контроль учеток выключен. сервера так же отвечают ВВВшками. Скорее всего твоя сборка распилена и исковеркана в плане доступа к реестру. нормальные системы х64 не отдают зашифрованный ключ. Я пока нашел только одну программу с труднопроизносимым немецким названием, которая это делает, только с доменным запуском еще не разобрался у нее, денег хочет за сетевой вариант
SAY
(22.06.2015 в 10:26):
Под ним родимым и запускал. Если ручками реестр открыть то доступ есть, а через скрипт нет :(
ManHunter
(21.06.2015 в 12:13):
Похоже, что запускать надо только под админом.
ficti0n
(21.06.2015 в 10:39):
Windows 7 Профессиональная x64. Выдает ошибку, что не может открыть для чтения HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId
На работе такая же винда и то же самое.
На работе такая же винда и то же самое.
user
(21.06.2015 в 01:29):
)) .. а волею .. - расшифруйте аббревиатуру "VBS"
hatmaster
(20.06.2015 в 23:42):
ManHunter, не холивара ради, но дабы позанудствовать: VBScript != Visual Basic. VB - это полноценный компилируемый язык, а VBS - его интерпретируемое ответвление. Да, базовый синтаксис один, но все же...
hatmaster
(20.06.2015 в 23:28):
boozer, только что скачал и ради интереса запустил прямо из архива. Win7x64 Ultimate, сборка OVGorskiy. Все честно показала. Правда у меня она работает в тестовом режиме, ибо сборка не самая удачная, и в обычном режиме хрен поставишь неподписанные дрова. Возможно, у тебя слишком закручен UAC, запусти от админа.
ManHunter
(20.06.2015 в 22:13):
vonMI, один из моих преподов в военке говорил: "не надо всего знать, надо знать где взять". 364 дня в году это действительно не понадобится, но может внезапно нарисоваться один день, когда подобная задача возникнет. И теперь ты гарантированно знаешь, где искать решение.
boozer, придется воспользоваться программами. Скрипт тестировался на x86
boozer, придется воспользоваться программами. Скрипт тестировался на x86
boozer
(20.06.2015 в 21:44):
на 7х64 ключ скрипт не показывает, вместо ключа BBBBBBBBB , так же и на 2008 серверах
avp1965
(20.06.2015 в 21:42):
полезное напоминание. о том, что "...мозги у компьютерщика не для того, чтобы на них спать", да и начинающим пользователям различных гаджетов данное творение пригодится - они-то только начинают всё это осваивать.
vonMI
(20.06.2015 в 21:18):
Ребята, и Уважаемый Хантер,а зачем этой ерундой заморачиваться,если давно ломана_переломана эта винда , и куча честных и не очень способов ей насладитья?!
Vnvvnv
(20.06.2015 в 10:33):
ManHunter,
Не только: https://msdn.microsoft.com/en-...=vs.85).aspx
Не только: https://msdn.microsoft.com/en-...=vs.85).aspx
Vnvvnv
(20.06.2015 в 10:20):
Еще можно добавить пару строк для записи в файл:
CreateFile(WinProductID)
Function CreateFile(text)
Dim fso, tf
Set fso = CreateObject("Scripting.FileSystemObject")
Set tf = fso.CreateTextFile("c:\winkey.txt", True)
tf.Write (text)
tf.Close
End Function
CreateFile(WinProductID)
Function CreateFile(text)
Dim fso, tf
Set fso = CreateObject("Scripting.FileSystemObject")
Set tf = fso.CreateTextFile("c:\winkey.txt", True)
tf.Write (text)
tf.Close
End Function
ManHunter
(20.06.2015 в 10:20):
brute, речь, видимо, идет о SLIC: https://ru.wikipedia.org/wiki/...ion_Table.29
Voffka
(20.06.2015 в 09:30):
brute, немного не так. В биосе "метка" о производителе и ставил ли он винду или нет. А ключи вводятся так же, только для каждого производителя они свои. Представь ситуацию, купил ты ноут за кучу енотов и хоме виндой, че теперь как дураку до скончания веков только с этим обрезком ходить, этож айфон получается. Да и биос шьется намного проще чем хотелось бы, а то столько мамок окирпичилось от кривых рук.
brute
(20.06.2015 в 07:19):
в вопросе не разбираюсь, но ясность внесу:) Сейчас в некоторых компах, которые продаются с предустановленной виндой (особенно ноутбуки!) ключи винды (и софта?) зашиты в биос!!! Без специального программного обеспечения биос не перешить и другую винду не поставить (и даже ту же винду, но с другим ключом)
Добавить комментарий
Заполните форму для добавления комментария