龙空技术网

还不备份序列号?再不备份就晚啦

搞科技的加藤惠 136994

前言:

如今同学们对“digitalproductid算法”大概比较看重,同学们都想要学习一些“digitalproductid算法”的相关知识。那么小编也在网摘上网罗了一些对于“digitalproductid算法””的相关资讯,希望大家能喜欢,兄弟们一起来学习一下吧!

题外话:关注我,每天都有稀奇古怪的干货文章哦,想看什么也可以私信我

许多windows用户每到重装系统后都可能会出现下面的情形

“诶?当初那个记着序列号的盒子呢?”

经过一番大搜查也没有找到,最后只能随便找一个不知道从哪来的序列号填进去

当然,如果你从最初就没有自己的正版密钥的话,那我也无话可说,但是希望你不要把这当成炫耀的资本

本文仅献给拥有正版系统的windows用户,教大家如何快速查到自己的序列号

当然,如果你不想每次都用神秘软件激活的话,这篇文章同样适合你

废话不多说,开整!

Win10用户

如果你现在是win10用户的话,那实在是太幸运了,因为win10系统仅仅需要一条命令就可以完成

按下win+r键,输入cmd,打开命令提示符

输入下面这一行命令

wmic path softwarelicensingservice get OA3xOriginalProductKey

出现的那一串就是你的序列号,直接记下来就ok了

Win7用户

是不是看到上面win10用户查找起来很方便!

非常遗憾的告诉你,其他的系统版本就没有那么简单了

网上查找序列号的方法很多很多,但是都相当的麻烦,比如查注册表啊下软件扫描查看啊什么的

今天我们用一个vbs文件来解决

打开一个记事本,在里面输入以下代码

ps:嫌弃代码多的,向后看,下面有准备好的文件

Option ExplicitON ERROR RESUME NEXTDim g_strComputer, g_objRegistry, g_EchoStringg_strComputer = "."g_EchoString = ""private const L_MsgErrorPKey = "没有安装Windows序列号, 以下为注册表残留信息。"private const L_MsgErrorRegPKey = "没有在注册表中找到Windows序列号."private const L_MsgErrorRegPID = "没有在注册表中找到Windows产品ID."Private const L_MsgProductName = "系统:"private const L_MsgProductDesc = "系统描述: "private const L_MsgVersion = "版本号: "Private Const L_MsgServicePack = "补丁包:"Private Const L_MsgBuild = "编译代号:"private const L_MsgProductKey = "序列号: "private const L_MsgProductId = "产品ID: "private const HKEY_LOCAL_MACHINE = &H80000002Private Const WindowsNTInfoPath = "SOFTWARE\Microsoft\Windows NT\CurrentVersion"'If this is the local computer, set everything immediatelyIf g_strComputer = "." ThenSet g_objRegistry = GetObject("winmgmts:\\" & g_strComputer & "\root\default:StdRegProv")End IfCall ExecCommand()Call ShowInfo()ExitScript 0Private Sub ExecCommandDim productKeyFoundDim strProductKey, strProductId, strProductVersion, strTmpDim bRegPKeyFound, bRegPIDFound ' value exists in registry'Retrieve information from registrybRegPKeyFound = False : bRegPIDFound = False : productKeyFound = Falseg_objRegistry.GetBinaryValue HKEY_LOCAL_MACHINE, WindowsNTInfoPath, "DigitalProductId", strTmpIf Not IsNull(strTmp) ThenstrProductKey=GetKey(strTmp)bRegPKeyFound = TrueEnd Ifg_objRegistry.GetStringValue HKEY_LOCAL_MACHINE, WindowsNTInfoPath, "ProductId", strTmpIf Not IsNull(strTmp) ThenstrProductId = strTmpbRegPIDFound = TrueEnd IfLineOut ""g_objRegistry.GetStringValue HKEY_LOCAL_MACHINE, WindowsNTInfoPath, "ProductName", strTmpLineOut GetResource("L_MsgProductName") & strTmpg_objRegistry.GetStringValue HKEY_LOCAL_MACHINE, WindowsNTInfoPath, "CSDVersion", strTmpIf Not IsNull(strTmp) ThenLineOut GetResource("L_MsgServicePack") & strTmpEnd Ifg_objRegistry.GetStringValue HKEY_LOCAL_MACHINE, WindowsNTInfoPath, "CurrentVersion", strProductVersiong_objRegistry.GetStringValue HKEY_LOCAL_MACHINE, WindowsNTInfoPath, "CurrentBuildNumber", strTmpstrProductVersion=strProductVersion & "." & strTmpLineOut GetResource("L_MsgVersion") & strProductVersiong_objRegistry.GetStringValue HKEY_LOCAL_MACHINE, WindowsNTInfoPath, "BuildLabEx", strTmpIf IsNull(strTmp) Theng_objRegistry.GetStringValue HKEY_LOCAL_MACHINE, WindowsNTInfoPath, "BuildLab", strTmpEnd IfLineOut GetResource("L_MsgBuild") & strTmpproductKeyFound = TrueLineOut ""If productKeyFound <> True Then LineOut GetResource("L_MsgErrorPKey")End IfIf bRegPKeyFound Then LineOut GetResource("L_MsgProductKey") & strProductKeyElse LineOut GetResource("L_MsgErrorRegPKey")End IfIf bRegPIDFound Then LineOut GetResource("L_MsgProductId") & strProductIdElse LineOut GetResource("L_MsgErrorRegPID")End IfLineOut ""LineOut "本程序用来获取查看Windows的序列号。"LineOut "适用于绝大多数Windows系统,包括 XP/Vista/Win7/Win10 系列等。"LineOut "记得关注搞科技的加藤惠,不要做伸手党哦"End SubPrivate Sub ShowInfoDim Ans, objFSO, outFile, strSaveSet objFSO = CreateObject("Scripting.FileSystemObject")strSave = vbNewLine & "-----------------------------------------------------------" & vbNewLine & g_EchoStringstrSave = strSave & vbNewLine & vbNewLine& "------ " & Now() & " " & "Windows 序列号查看器保存" & " ------" & vbNewLineLineOut ""LineOut ""LineOut "是否保存以上信息到文本文件 WindowsKey.txt ?"Ans = MsgBox(g_EchoString, 4, "Windows 序列号查看器")g_EchoString = ""If Ans = vbYes Then Set outFile = objFSO.OpenTextFile(".\WindowsKey.txt", 8 , True) ' append to fileoutFile.WriteLine strSaveoutFile.CloseLineOut "已经保存到文件 WindowsKey.txt !"End IfEnd SubPrivate Function GetKey(rpk) 'Decode the product keyConst rpkOffset=52Dim dwAccumulator, szPossibleChars, szProductKeydim i,ji=28 : szPossibleChars="BCDFGHJKMPQRTVWXY2346789"Do 'Rep1 dwAccumulator=0 : j=14 Do dwAccumulator=dwAccumulator*256 dwAccumulator=rpk(j+rpkOffset)+dwAccumulator rpk(j+rpkOffset)=(dwAccumulator\24) and 255 dwAccumulator=dwAccumulator Mod 24 j=j-1 Loop While j>=0 i=i-1 : szProductKey=mid(szPossibleChars,dwAccumulator+1,1)&szProductKey if (((29-i) Mod 6)=0) and (i<>-1) then i=i-1 : szProductKey="-"&szProductKey end ifLoop While i>=0 'Goto Rep1GetKey=szProductKeyEnd Function' Get the resource string with the given name using the built-in default.Private Function GetResource(name)GetResource = Eval(name)End FunctionPrivate Sub ExitScript(retval)if (g_EchoString <> "") Then MsgBox g_EchoString, 0, "Windows 序列号查看器"End IfWScript.Quit retvalEnd Sub' Functions Without Change BelowPrivate Sub LineOut(str)g_EchoString = g_EchoString & str & vbNewLineEnd Sub

关闭,保存,修改文件后缀为vbs,大功告成

我们来点击运行一下

怕手抖记错序列号?不要担心,还能一键保存,妈妈再也不用担心我记不住了

复制粘贴太麻烦?也不要担心,这个vbs文件我也提前准备好了,关注我私信回复“序列号”就可以啦

发文不易,欢迎各位关注,点赞,评论,转发素质四连,每天都有稀奇古怪的干货文章,想看什么也可以私信我哦

标签: #digitalproductid算法