理解VBScript和操作符

理解VBScript和操作符,vbscript,Vbscript,我正在尝试了解Microsoft的VBScript,以检索Windows 8产品密钥,网址为: 我以前从未使用过VBScript,我对脚本代码感到困惑。任何人都可以帮助我理解脚本的开头: Function ConvertToKey(Key) Const KeyOffset = 52 Dim isWin8, Maps, i, j, Current, KeyOutput, Last, keypart1, insert 'Check if OS is Windows 8 isWin8 = (Key(

我正在尝试了解Microsoft的VBScript,以检索Windows 8产品密钥,网址为:

我以前从未使用过VBScript,我对脚本代码感到困惑。任何人都可以帮助我理解脚本的开头:

Function ConvertToKey(Key)
Const KeyOffset = 52
Dim isWin8, Maps, i, j, Current, KeyOutput, Last, keypart1, insert
'Check if OS is Windows 8
isWin8 = (Key(66) \ 6) And 1
Key(66) = (Key(66) And &HF7) Or ((isWin8 And 2) * 4)

我的理解是isWin8应该计算为0或1。然后表达式((isWin8和2)*4)的计算结果将始终为0,因为(isWin8和2)应始终为0。显然,我对脚本语言的理解中缺少了一些东西。但是什么呢?

函数ConvertToKey(Key)
此函数通过Key变量传递一个Key

Const keypoffset=52
此常量用于偏移双精度浮点(二进制64)数中的位置。符号位:1位,指数宽度:11位,有效位精度:53位(显式存储52位)

Dim isWin8,映射,i,j,Current,keypoutput,Last,keypart1,insert
声明变量并保留ram

“检查操作系统是否为Windows 8
”您不喜欢评论吗

isWin8=(键(66)\6)和1
“这需要一些复杂的数学运算。这个AND运算符(有趣的是msgbox 3和6)对两个表达式执行逻辑连接


Key(66)=(Key(66)和&HF7)或((isWin8和2)*4)
“密钥数组的第66个元素设置为自身和(Public Const VK_CRSEL=&HF7),这是一个虚拟密钥代码(CRSEL Key)。剩下的是简单的数学

你没有遗漏任何东西。这正是你所理解的。谢谢。我以为这是微软的工作人员写的,不理解代码。在反复检查代码后,它似乎是由黑客发布的。显然是一个需要检查代码的黑客!!!