上午好☀️☀️☀️️
本答案参考通义千问
你遇到的 VirtualBox 启动虚拟机报错 VERR_INVALID_NAME (-104) 是一个比较典型的 驱动服务无法启动 的错误,通常与 VBoxSup 驱动 或 内核隔离(Kernel Isolation) 有关。
🧩 问题分析
报错信息解析
Error in supR3HardenedWinReSpawn Error relating to VirtualBox VM process: 5 ...
VERR_INVALID_NAME (-104) - Invalid (malformed) file/path name.
这个错误表明 VirtualBox 在尝试启动虚拟机时,无法正确加载或运行 VBoxSup 驱动,而其核心原因是:
- 路径名不合法(例如包含非法字符、空格、中文等)
- 驱动签名问题
- 内核隔离或 Hyper-V 冲突
- 系统权限或注册表配置错误
✅ 已尝试方法总结
你已经尝试了以下方法,但未解决问题:
- 手动安装 VBoxSup.inf
- 管理员命令行执行
sc start vboxsup - 检查注册表
HKLM\SYSTEM\CurrentControlSet\Services\VBoxSup 的 Start 值为 2 - 关闭杀毒软件和 Windows Defender 实时防护
- 禁用 Hyper-V 和设置
bcdedit /set hypervisorlaunchtype off - 彻底卸载并重装 VirtualBox
- 确认安装路径无中文或特殊字符
这些操作虽然有效,但在某些情况下仍可能因 系统安全策略(如内核隔离) 或 驱动签名问题 导致失败。
🔍 推荐检查项及解决方案
1. 检查并关闭“内核隔离”(Kernel Isolation)
这是导致 VirtualBox 无法启动的最常见原因之一。即使你禁用了 Hyper-V,Windows 11 中的内核隔离功能仍然可能阻止 VirtualBox 的驱动加载。
步骤如下:
- 打开 设置 > 系统 > 安全 > 设备安全性 > 内核隔离。
- 关闭 内核隔离。
- 重启电脑后重新尝试启动 VirtualBox。
注意: 如果你使用的是 Windows 11 Pro 或更高版本,内核隔离可能是默认开启的。
2. 检查驱动签名强制策略
VirtualBox 驱动(如 VBoxSup)在某些情况下需要 内核模式驱动签名(Kernel Mode Driver Signing)。如果系统启用了此策略,可能会导致驱动加载失败。
检查方法:
- 打开 命令提示符(管理员)。
- 输入:
bcdedit /enum
- 查看是否有
hypervisorlaunchtype 设置为 Off,或者是否启用了 Driver Signature Enforcement。
解决方案:
3. 检查 VirtualBox 驱动文件的完整性
确保 VBoxSup.inf 和相关驱动文件没有被损坏或缺失。
检查路径:
C:\Program Files\Oracle\VirtualBox\drivers\vboxsup
- 确保
VBoxSup.inf 存在且大小合理。 - 尝试手动重新安装驱动:
4. 修改注册表以允许驱动加载
有时注册表中某些键值可能导致驱动无法加载。
修改注册表项:
- 打开 注册表编辑器(regedit)。
- 导航到:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VBoxSup
- 确保以下键值存在并正确:
5. 检查系统日志中的详细错误信息
VirtualBox 的日志文件可以帮助你更准确地定位问题。
查找日志路径:
6. 尝试使用兼容性模式运行 VirtualBox
有时候,系统安全策略会限制某些程序的运行,特别是对驱动的访问。
方法:
- 右键点击 VirtualBox 的快捷方式。
- 选择 属性。
- 切换到 兼容性 选项卡。
- 勾选 以管理员身份运行。
- 尝试重新启动虚拟机。
7. 尝试使用旧版 VirtualBox(如 6.x)
如果你当前使用的是 VirtualBox 7.x,可能存在与 Windows 11 兼容性问题。
建议:
- 下载并安装 VirtualBox 6.1.x(官方推荐稳定版本)。
- 安装完成后,再尝试启动虚拟机。
✅ 最终建议
如果你已经尝试了上述所有方法,但仍无法解决,请提供以下内容以便进一步分析:
sup-hardening.log 文件内容(位于虚拟机的日志目录下)。- 系统事件日志中与 VirtualBox 相关的错误记录。
- Windows 版本号和 Build 号(如:Windows 11 22H2)。
- VirtualBox 安装路径(确认无中文或特殊字符)。
🛠️ 示例代码(可选)
如果你决定尝试手动安装驱动,可以使用以下命令:
pnputil -i -a "C:\Program Files\Oracle\VirtualBox\drivers\vboxsup\VBoxSup.inf"
然后重启系统。
📌 总结
| 问题原因 | 解决方案 |
|----------|----------|
| 内核隔离启用 | 关闭内核隔离 |
| 驱动签名强制 | 临时关闭驱动签名强制 |
| 注册表配置错误 | 检查并修复 VBoxSup 注册表项 |
| 路径非法 | 确保安装路径无中文/特殊字符 |
| 驱动文件损坏 | 重新安装 VBoxSup.inf |
| 系统兼容性问题 | 尝试使用 VirtualBox 6.x |
如有更多日志或系统信息,欢迎继续提问,我可以帮你进一步分析!