defragmentator
Junior Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Доброго времени суток! Все слышали про "WindowsKey.vbs" (Определение ключа установленной системы Windows через VBScript). Кто не слышал - не беда. Этот скрипт выводит информационное окно с версией ОС и ключом Microsoft. Мне пришло в голову немного поправить этот скрипт и дать ему новые возможности. Для этого мне нужна Ваша помощь. Я хотел бы реализовать этот скрипт так, что-бы после его запуска не выводилась информация на экран монитора, а результат выполнения vbs скрипта записывался в txt файл. Возможно кто-то уже модифицировал данный скрипт под себя или реализовывал через bat или exe файлы. Прошу поделится фантазией. Необходима юзабельность в Win от 7 до 10. Всем спасибо жду варики... Скрипт WindowsKey.vbs: Код: Set WshShell = CreateObject("WScript.Shell") regKey = "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\" DigitalProductId = WshShell.RegRead(regKey & "DigitalProductId") Win8ProductName = "Windows Product Name: " & WshShell.RegRead(regKey & "ProductName") & vbNewLine Win8ProductID = "Windows Product ID: " & WshShell.RegRead(regKey & "ProductID") & vbNewLine Win8ProductKey = ConvertToKey(DigitalProductId) strProductKey ="Windows 8 Key: " & Win8ProductKey Win8ProductID = Win8ProductName & Win8ProductID & strProductKey MsgBox(Win8ProductKey) MsgBox(Win8ProductID) 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 |