快捷指南

查询GVLK KEY:速查

Windows

操作提示
以下操作均假设你使用管理员权限的命令行CMD

查询当前激活信息/系统版本(确保是支持KMS的版本):

1
slmgr /dlv

安装对应GVLK密钥(如果是从VLSC下载VL版本已经内置,不需要安装)
注:VL版本的镜像文件名一般是SW_开头。MSDN下的不是VL版本。

1
slmgr /ipk xxxxx-xxxxx-xxxxx-xxxxx-xxxxx

设置KMS服务器地址

1
slmgr /skms kms.example.com

手动执行激活请求(KMS服务正常的话,手动点立即激活一样效果,不点过一段时间也会自己请求)

1
slmgr /ato

查询过期时间

1
slmgr /xpr

更多命令可以输入slmgr后回车查看。

Office

操作提示
以下操作均假设你使用管理员权限的命令行CMD,使用VL版本的Office
注:非VL版本的Office可以通过添加转换VL证书来使用KMS,但不推荐
以下命令均cd到OSPP.VBS所在文件夹操作或者省略前面的路径。

首先找到你的OSPP.VBS所在的目录,一般是office安装所在目录(Program Files\Microsoft Office\Officexx),找不到的建议安装一个Everything或者使用windows自带的文件搜索框搜索一下,把OSPP.VBS拖到运行对话框即可快速获取文件路径以便复制。
设置KMS服务器地址:

1
cscript ospp.vbs /sethst:kms.example.com

手动执行激活请求(KMS服务正常的话,打开任意office组件也会自动请求激活)

1
cscript ospp.vbs /act

如果提示看到successful的字样,那么就是激活成功了。 更多命令可以输入cscript ospp.vbs后回车查看。

版本转换

对于Win10 1703+或者对应Server,你可以直接更换对应的GVLK KEY来更改系统的版本。但很多版本在发行的时候其实内置的证书不全,更改KEY会提示非核心版本,比如一些出厂安装了家庭版的笔记本,缺了个远程桌面功能,想改成专业版或者企业版,是不是只能重装呢?其实可以添加补全证书即可转换。这个方法也适用于转换其他奇奇怪怪的版本,比如EnterpriseG。

  1. 找到一台目标版本的电脑或者镜像,把\Windows\System32\spp\tokens\skus文件夹复制出来。
  2. 把上面的文件夹覆盖到要转换的系统的相同位置,补全许可证。
  3. 执行命令安装许可证:slmgr /rilc
  4. 执行命令安装对应版本的GVLK:slmgr /ipk xxxxx-xxxxx-xxxxx-xxxxx-xxxxx,转换完成。

Office也可以通过添加许可证来“转换”版本,但不推荐这么干,因为重装Office比重装系统简单,一来你可能在Office里面看到多个许可证一个激活一个没激活非常强迫症,二来这样干有可能会出现“你的许可证不是正版,你可能是盗版软件的受害者?”的弹窗(虽然不影响使用,果然office比windows赚钱啊)。因此,建议直接安装使用VL版本的office。

故障速查和常见问题

  • 你的系统/Office是否是批量许可证VL版本
    不是的话,可以参考上一节“版本转换”。
  • 是否以管理员权限运行CMD
    不是的话,可以开始菜单搜索CMD,然后右键管理员运行。0x80070005错误一般是你没用管理员权限运行CMD。
  • 提示非核心版本运行
    参考上一节“版本转换”。
  • 提示0xC004F074软件授权服务报告无法激活计算机,无法联系任何密钥管理服务(KMS)
    这个报错分两种情况,出现这个报错的底层原因是无法连接到KMS服务器,首先,有可能是你的KMS服务器挂了或者你的网络挂了导致无法连接,这个情况你可以使用vlmcs kms.example.com来测试KMS服务器是否有正常返回(successful)。其次,KMS服务器和网络都正常的话,那就是可能你之前使用了一些第三方KMS激活工具,把系统的软件服务激活劫持了,无论你设置什么KMS地址都会劫持到本地去,这种情况可能没什么比较通用的解决方法,可以用下面的方法尝试检查下注册表的劫持项,不行就重开吧:
    打开注册表HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
    定位到(如果有)SppExtComObj.exesppsvc.exeosppsvc.exe,删除这些项。
    注:你可以在这里下载到vlmcs工具
    PS:你可能在这里能找到一些测试的KMS模拟服务器
  • KMS服务器可以远程控制客户端吗
    不能。KMS服务器唯一能控制的是可以远程下发激活请求的时间间隔策略(但可以被本机策略覆盖),可以收集到客户端计算机名、产品版本、硬件HASH、IP地址等激活必须信息,但无法控制任何电脑,请不要误解“利用你组织的服务方式激活”的意思。
  • 其他问题可以根据出错代码找原因。

批处理编写指南

以激活windows为例,使用cscript.exe //nologo可以在命令行内输出。替换kms.example.com为你的KMS服务器地址,替换XXXXX-XXXXX-XXXXX-XXXXX-XXXXX为你的GVLK KEY。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
set kmsserver=kms.example.com
:: Get Administrator Rights
set _Args=%*
if "%~1" NEQ "" (
  set _Args=%_Args:"=%
)
fltmc 1>nul 2>nul || (
  cd /d "%~dp0"
  cmd /u /c echo Set UAC = CreateObject^("Shell.Application"^) : UAC.ShellExecute "cmd.exe", "/k cd ""%~dp0"" && ""%~dpnx0"" ""%_Args%""", "", "runas", 1 > "%temp%\GetAdmin.vbs"
  "%temp%\GetAdmin.vbs"
  del /f /q "%temp%\GetAdmin.vbs" 1>nul 2>nul
  exit
)

%windir%\System32\cscript.exe //nologo %windir%\System32\slmgr.vbs /rilc 1>nul 2>nul
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\CurrentVersion\Software Protection Platform" /v NoGenTicket /t REG_DWORD /d 1 /f 1>nul 2>nul
%windir%\System32\cscript.exe //nologo %windir%\System32\slmgr.vbs /act-type 0 1>nul 2>nul
%windir%\System32\cscript.exe //nologo %windir%\System32\slmgr.vbs /ckhc 1>nul 2>nul
%windir%\System32\cscript.exe //nologo %windir%\System32\slmgr.vbs  /ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
%windir%\System32\cscript.exe //nologo %windir%\System32\slmgr.vbs /skms %kmsserver% 1>nul 2>nul
echo Trying to activate...
%windir%\System32\cscript.exe //nologo %windir%\System32\slmgr.vbs /ato
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform\55c92734-d682-4d71-983e-d6ec3f16059f" /f 1>nul 2>nul
(for /f "delims=" %%d in ('reg query hku') do (
    reg delete "%%d\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform\55c92734-d682-4d71-983e-d6ec3f16059f" /f 1>nul 2>nul
))
%windir%\System32\cscript.exe //nologo %windir%\System32\slmgr.vbs  /xpr
echo KMS Activate Script Action Complete.
timeout 8
exit

什么是KMS?跟其他激活方式有什么不同?

KMS是密钥管理服务(Key Management Server),是自从Windows Vista后微软开始使用的一种大型组织中的批量激活技术。在没有这个技术的XP时代,大批量的激活都使用VLK(Volume License Key)激活,因此只要把一些泄露的VLK密钥(比如某某PC制造商、某某银行、某某单位的密钥)抄下来,你就可以随便安装其他电脑上。因此在XP的时代,盗版就没有激活的问题,一个镜像一个序列号走天下,Ghost XP也是满大街。同时期的Office 2007也是静态的序列号,都不需要联网验证随便装。 为了杜绝激活毫无存在感这种尴尬的情况,从Windows Vista开始,常见的激活方式分成了以下几种:

方式适用系统/软件使用条件
零售Key对应的零售产品(Retail)你能买到的DVD/数字版的正版产品,或者其他代理商渠道的零售Key,既然是买正版当然能用啦!需要联网验证,或者找客服电话激活
SLIC OEM制造商在BIOS中添加SLIC信息,适用于win7等较旧的系统,当然也有Server在用的比如Server 2022依然有SLIC激活BIOS中有完整SLIC表(有些电脑出厂带了个空表,没啥用还妨碍用KMS)、有对应OEM厂商的证书和OEM产品密钥(这个是不变的)
数字权利仅适用于部分有OEM SLP密钥的Windows10+系统/不能用于Server使用正版Windows7等产品升级或者其他永久激活的渠道(比如商店买的、随机附带的、用了有效的密钥等)联网同步硬件信息后,使用对应的数字权利key即可在同一台电脑上重装联网激活(比如经典的3V66T)
KMS对应的批量授权产品(Volume),或者可以被转换证书的产品
  • 对于Win10 1703+之前的系统,需要安装专业版或者企业版(Server对应批量版),并且BIOS中不含SLIC信息(或者企业版)。
  • Win10 1703+的系统使用对应的GVLK即可,只要系统中证书不缺或者补上证书,会自动转换产品。
  • Office可以通过转换安装证书来使用,但建议安装批量版本。
  • 最少180天内要成功连接一次KMS服务器,否则激活失效。
批量多次密钥MAK对应的批量授权产品(Volume),与KMS适用范围一样与KMS一样用于批量激活,但是永久激活

虽然激活方式很多花样,但只要是使用正规渠道激活的,都是正版产品。因此“KMS”并不是很多小白理解的“盗版”、“病毒”,而是微软提供一种批量激活方式。那为什么会有这个印象呢?因为针对上面的几种激活方式,都有各自的盗版利用方式,而KMS成了较为通用的一种。

  • 首先,对于零售key,这个没什么好利用方式,开发者测试账户订阅倒卖的key或者去电脑城偷拍了未激活笔记本的key吧233333。
  • 对于批量多次密钥MAK,这个也没什么好说的,网上经常有泄露出来的MAK密钥,可用激活次数比较多但也不是无限,运气好的话可能蹲到一个能用,次数用完了可用电话渠道激活尝试,属于是可遇不可求的方式。可以用工具PidKeyTool来检测密钥有效性。
  • 对于SLIC,修改BIOS加入SLIC表,或者修改引导程序加载SLIC到内存中(所以可以看到有些Win7电脑开机有个Grub4dos一闪而过),用对应的证书和key即可激活(这个不难找,可以直接搜索SLIC证书合集),但对于office没啥用,并且现在win10也用不了,另外修改BIOS有风险,在UEFI引导中加载SLIC也稍微复杂一点(可以用Clover/OpenCore等程序)。SLIC也有不同版本,比如最初的vista是2.0,win7是用的比较多的2.1,win8开始就用不了,但Server还有在用,比如SLIC2.6激活Server2022,SLIC版本向下兼容。一句话简单来说SLIC适用范围有限,盗版需要修改BIOS或者引导,操作复杂。
    题外话:你可能在这里能找到SLIC信息。
  • 数字权利是在Win10刚出来的时候,给Win7升级免费升级到win10搞出来的东西,正常来说你需要有一个正版的win7或者win8等系统,然后升级,程序会收集你电脑的硬件信息和密钥,生成一个“门票”提交给微软服务器,以后联网微软就可以判断硬件信息是否对的上就能激活。当然你使用零售的key或者MAK等永久激活的方式都可以获取数字权利,要是你的key来源不怎么干净,这就相当于偷渡洗白了,下次重装还能用,哈哈。office没有数字权利,不过有效的key可以绑定到自己的微软账户,类似于steam兑换码。
    那这个数字权利怎么被盗版方便地利用呢?在这个免费升级的过程中,有个gatherosstate.exe,他检查当前系统已经有效永久激活的话,他就收集硬件信息和密钥等生成一个“GenuineTicket.xml”门票,发送给微软服务器,微软认可这个“门票”之后我们就可以使用数字权利了。而关键在于这个gatherosstate.exe,通过魔改的gatherosstate.exe,可以忽略一切条件不管你有没有激活在什么系统下,直接生成门票,然后使用clipup安装门票即可。理论上微软可以轻松筛选出这些使用不正常方法生成的“门票”,但微软没有这么做,毕竟收入最大来源并不是普通用户,况且Windows现在也不怎么赚钱了。这个方法的缺点也很明显,需要联网提交信息给微软,需要运行魔改版的gatherosstate,因此还需要关闭自带的Windows Defender杀毒,需要一个个手动操作,当然能一劳永逸也是个选择。常见工具有HWIDGEN等。
  • 最后就是KMS激活了。KMS需要一台Windows服务器上安装批量激活服务,添加对应的KMS KEY,达到一定条件后客户端就可以通过自动发现或者手动输入KMS服务器地址进行激活。关键就在于这个服务器,经过国外大神们的不断研究,开发了不少版本的KMS服务模拟器,相当于游戏的私服,很多激活工具集成了KMS模拟器,在本机通过虚拟网卡的形式弄了个虚拟局域网给本机激活,又或者通过注册表劫持服务的形式让所有激活请求都劫持到本地。很多小白就是用的这种激活工具,因为他通用,简单,但又容易被坏坏的人往里面加木马病毒广告。基于这些工具要么运行在后台要么要劫持服务,这里很不推荐使用任何KMS工具。当然你自己搭建一个KMS模拟器或者使用别人的公网模拟器的话,就比较干净一点,只要你是手动输入命令行应用KMS的话,想使用其他激活方式直接更换密钥即可,无任何影响,后文再细说。使用KMS激活会定期向服务器请求激活信息,如果超过最大180天的宽限期联系不上服务器,激活就会失效。平时看到那么多的“未激活的Windows”估计是工具激活之后把后台都杀掉了。Enterprise G(G是Gov的G,神州网信的特供版)版本使用KMS可以激活宽限400年(但会自动应用一些组策略)。近年还有一种“KMS38”的激活方式,他并不是属于微软的正常渠道的激活方式,原理是利用了上面的数字权利程序,正常来说KMS最大宽限期只有180天,但gatherosstate.exe生成门票的时候可以继承剩余的KMS日期,bug就来了,我们可以欺骗他把日期修改到2038年,所以他叫做KMS38。这个过程甚至不需要发送门票给微软,完全离线。至于为什么是2038年?因为在有符号32位整数时间戳里面2038是最大值,就像千年虫一样,详细可以搜索“2038年问题”。
    使用KMS激活理论上微软可以很轻松识别出盗版,模拟器的返回的报文很多地方都很假,比如很多模拟器用的KMS host Hardware ID都是同一套,或者ePID(KMS host extended PID)很假,又或者他可以激活任意不存在的产品……当然微软也是不怎么管了。
    题外话:你可能在这里能找到EnterpriseG的激活脚本。

KMS如何工作

待更新

搭建KMS服务

待更新