PowerShell中获取Windows系统序列号的脚本分享
windows序列号可以直接在注册表中读取,PowerShell要做的只是读出数据后稍作处理,让它更像一个序列号。
functionGet-ProductKey{ $map="BCDFGHJKMPQRTVWXY2346789" $value=(get-itemproperty"HKLM:\SOFTWARE\Microsoft\WindowsNT\CurrentVersion").digitalproductid[0x34..0x42] $ProductKey="" for($i=24;$i-ge0;$i--){ $r=0 for($j=14;$j-ge0;$j--){ $r=($r*256)-bxor$value[$j] $value[$j]=[math]::Floor([double]($r/24)) $r=$r%24 } $ProductKey=$map[$r]+$ProductKey if(($i%5)-eq0-and$i-ne0){ $ProductKey="-"+$ProductKey } } $ProductKey }
输出结果为:
PS>Get-ProductKey VKTXG-GXXY3-W97QP-GP4PV-XXXXX