欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PowerShell中获取Windows系统序列号的脚本分享

程序员文章站 2022-03-31 09:23:08
windows序列号可以直接在注册表中读取,powershell要做的只是读出数据后稍作处理,让它更像一个序列号。 复制代码 代码如下: function get-...

windows序列号可以直接在注册表中读取,powershell要做的只是读出数据后稍作处理,让它更像一个序列号。

复制代码 代码如下:

function get-productkey {   
    $map="bcdfghjkmpqrtvwxy2346789"
    $value = (get-itemproperty "hklm:\software\microsoft\windows nt\currentversion").digitalproductid[0x34..0x42] 
    $productkey = "" 
    for ($i = 24; $i -ge 0; $i--) {
      $r = 0
      for ($j = 14; $j -ge 0; $j--) {
        $r = ($r * 256) -bxor $value[$j]
        $value[$j] = [math]::floor([double]($r/24))
        $r = $r % 24
      }
      $productkey = $map[$r] + $productkey
      if (($i % 5) -eq 0 -and $i -ne 0) {
        $productkey = "-" + $productkey
      }
    }
    $productkey
}

输出结果为:

复制代码 代码如下:

ps> get-productkey
vktxg-gxxy3-w97qp-gp4pv-xxxxx