Windows 更新后 eNSP 启动设备失败,错误代码 40

问题描述

eNSP 启动设备时提示 “启动设备失败,错误代码:40”

eNSP 错误提示

查看 VirtualBox Host-Only Network 网卡在 Windows 更新后消失了,重新在 VirtualBox 中添加,添加和配置后,新网卡名称为 VirtualBox Host-Only Network #2 。在 eNSP 中重新注册设备仍提示该错误无法启动设备。

尝试修改网卡名称去掉 #2 ,提示 “无法重命名该连接。具有指定名的连接已经存在。指定一个不同的名称。”,但网络适配器列表中并没有 “VirtualBox Host-Only Network” ,在设备管理中勾选 “显示隐藏的设备” 也没有找到。

显示隐藏的设备

可能系统中保存有残留信息,打开注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkSetup2 查看,提示 “由于某个错误无法打开该密钥。详细信息:拒绝访问”,未能成功查看,使用管理员身份运行注册表编辑器也无法访问。

注册表无法访问

解决方法

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkSetup2 注册表项需要 NetSetupSvc 或 TrustedInstaller 权限访问,管理员权限无法访问,所以需要借助工具以该身份打开,可以使用 RunAsTI (https://github.com/jschicht/RunAsTI) 或 PowerRun (https://www.sordum.org/9416/powerrun-v1-5-run-with-highest-privileges/) 。

本文以使用 RunAsTI 为例,下载并运行 RunAsTI64.exe 后会打开一个具有该权限的 cmd ,在此 cmd 中输入 regedit 运行注册表编辑器,即可访问这个注册表项。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkSetup2\Interfaces 里可以查看到有很多 {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} ,再展开 Kernel 可以看到 IfAlias 中即是适配器的名称,找到 VirtualBox Host-Only Network 这一项并删除(删除前建议先导出保存),然后重启计算机。

重启完成后, 在 VirtualBox 中添加网卡时就能添加没有 #2 的网卡了,根据 eNSP 文档配置好该网卡 IP 和关闭 DHCP ,然后打开 eNSP 重新注册设备就可以正常启动了。

eNSP 注册设备
设备启动成功

发表回复