Windows/

关于 Windows 系统激活问题的解决

发布
更新
字数
465
阅读
1 分钟

有一台之前安装的 Windows Server 2016,没有激活。于是打算用 kms 来试试。运行

bash
slmgr.vbs /dlv

查一下它的状态,结果显示:

plaintext
错误: 0x80070426 在运行 Microsoft Windows 非核心版本的计算机上,运行“slui.exe 0x2a 0x80070426”以显示错误文本。

然后又运行

bash
slui.exe 0x2a 0x80070426

查了一下,显示:

plaintext
代码:
0x80070426

描述:
服务尚未启动。

于是到服务里面去看,Software Protection 这个服务没有启动。运行

bash
net start sppsvc

结果显示 Software Protection 无法启动,显示

plaintext
系统出错。

发生系统错误 5。

拒绝访问。

啥情况?放狗在网上好好的搜刮了一轮,没找到任何有用的信息。微软中文官方社区上的答复更是牛头不对马嘴。好吧……换英文再搜一下,在这儿真的是要吐槽一下微软了,中英文都一个德性,牛头不对马嘴,回复跟机器人一样,没任何参考价值。

不过还好,英文结果里面有些还是有用的。在我这儿的解决步骤如下:
在 C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft 文件夹中添加 SoftwareProtectionPlatform 文件夹,并运行如下命令:

bash
icacls %windir%\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft\SoftwareProtectionPlatform /grant "BUILTIN\Administrators:(OI)(CI)(F)" "NT AUTHORITY\SYSTEM:(OI)(CI)(F)" "NT Service\sppsvc:(OI)(CI)(R,W,D)" "NETWORK SERVICE:(OI)(CI)(F)"

这一步貌似可以不用……

然后 为
HKEY_LOCAL_MACHINE\SYSTEM\WPA
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform
添加 network service 用户权限
在我这儿,我只为 HKEY_LOCAL_MACHINE\SYSTEM\WPA 添加权限就可以了。

再运行

bash
net start sppsvc

结果显示启动成功。然后再 slmgr.vbs /skms 和 /ato 就没有问题了。问题解决。

评论

正在载入评论…

留下评论

人机验证
四位数字,看不清可点击图片刷新

评论经审核后显示。

回到顶部 ↑