возможно, я делаю это неправильно, но я пытаюсь изменить VBScript для поиска ключа продукта Windows для поддержки поиска ключа продукта для Microsoft Office Pro. Вот код, но я хотел бы, чтобы имя папки "unknown" имело тот же эффект, что и подстановочный знак. Я знаю, что фактический подстановочный знак невозможен в VBScript, но что я могу сделать, чтобы вернуть значение реестра для "DigitalProductID" в сценарии без указания папки "неизвестно"? Или я где-то меняю код еще?
Set WshShell = CreateObject("WScript.Shell")
MsgBox ConvertToKey(WshShell.RegRead("HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftOffice.0RegistrationunknownDigitalProductId"))
Function ConvertToKey(Key)
Const KeyOffset = 52
i = 28
Chars = "BCDFGHJKMPQRTVWXY2346789"
Do
Cur = 0
x = 14
Do
Cur = Cur * 256
Cur = Key(x + KeyOffset) + Cur
Key(x + KeyOffset) = (Cur 24) And 255
Cur = Cur Mod 24
x = x -1
Loop While x >= 0
i = i -1
KeyOutput = Mid(Chars, Cur + 1, 1) & KeyOutput
If (((29 - i) Mod 6) = 0) And (i <> -1) Then
i = i -1
KeyOutput = "-" & KeyOutput
End If
Loop While i >= 0
ConvertToKey = KeyOutput
End Function