Имя: Пароль:
IT
Админ
Правильная ли схема и как называется утилита?
0 2бит
 
21.10.16
08:52
Здравствуйте, задача достаточно банальна, с головного офиса спустили ключи от виндовс 10 для каждого магазина отдельно. Но сисадмин , который работал вёл их рандомно.Теперь стоит задача их ввести согласно тому как их прислали из головного офиса. Я так понял есть утилита с помощью которой можно узнать, какой ключ на ПК, соответственно я узнаю ключи, и потом активируют их на виндовс исходя из списка.
Вопрос правильна ли моя схема?
И как называется это утилита?
1 Libertus
 
21.10.16
11:10
В свойствах системы есть пункт "Изменить ключ продукта". Оно?
2 shinobufag
 
21.10.16
11:11
(0) аида
3 JeHer
 
21.10.16
11:24
Головной офис - такой головной боль...
4 Мойдодыр
 
21.10.16
11:25
(1) разве можно будет изменить на тот что уже использован?
5 Мойдодыр
 
21.10.16
11:26
мне кажется уже ключи привязались к оборудованию
6 shinobufag
 
21.10.16
11:31
(5) Не знаю как в десятке, но в 7 точно можно менять.
7 mr_fix
 
21.10.16
11:32
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
CreateFile(WinProductID)
Function CreateFile(text)
  Dim fso, tf
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set tf = fso.CreateTextFile("c:\winkey.txt", True)
  tf.Write (WinProductID)
  tf.Close
End Function
8 shinobufag
 
21.10.16
11:34
(7) Точно на десятку взлетит? А то ведь у них ключ вообще к материнке по идее привязывается?
9 mr_fix
 
21.10.16
12:19
(8) И как это помешает его показать?
Windows Product Name: Windows 10 Pro
Windows Product ID: 00331-10000-00001-AA661
Windows Key: W999N-WFGWX-YVC0B-8J6C5-T37GX
10 Libertus
 
21.10.16
12:32
(4) Да, можно. Главное на всех местах сделать это оперативно. Есть еще инструмент переактивации типа "смена оборудования", но для него нужна учетная запись МС.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн