刚更新到 VMware Workstation Pro 14.1.1,结果发现一个很严重的问题,就是开启之前的虚拟机系统,竟然是出现黑屏,没有任何显示,之前的系统是在 VMware 12 下建立的,难道不兼容?按理来说应该不会的。网上搜索了一下,果然,很多人都遇到了这个问题。通过学习思考,黑屏原因及解决方法如下:

VMware Workstation 黑屏

原因分析

  开启或新建虚拟机后出现黑屏现象,但是我们发现如果挂起虚拟机,是可以显示挂起前最后的画面。这么看来,虚拟机核心是正常工作的,只是“显示”方面出现了一些问题。Hakc520.com 了解到,虚拟机内界面的显示其实是通过“内部网络传输”的方式实现的,因此,无法显示虚拟机的界面,很有可能是网络组件方面出现了问题。支持这一说法的另外一个依据是,VMware官方对Workstation Pro 14 的新功能新特性的介绍包含了这样一条:
“新的网络连接控制”:Workstation 14 提供了许多改进的网络连接功能。现在,您可以在客户机虚拟网卡上使用软件控制模拟延迟和丢包,并重命名虚拟网络以改善组织结构。”看起来VM14和VM12在网络连接方面的确实有比较大的改动,因此VM12没问题而VM14出现问题似乎就没有那么奇怪了。

故障排查

  以管理员身份运行 CMD,输入 netsh winsock show catalog,该命令用来查看网络组件的注册日志,可以观察到 VMware 14 注册了两个新的LSP:vSockets DGRAM 和 vSockets STREAM,路径是%windir%\system32\vsocklib.dll。观察一下有没有其他模块也注册了vSockets DGRAM、vSockets STREAM,如果有,就卸载掉这个模块所属的软件。比方有网友安装了迅游加速器,它注册了vSockets DGRAM,与VMware产生了冲突,卸载迅游加速器后 VMware 不再黑屏。

解决方法

  官网论坛上也有人在问这个问题,客服说可以试试在 VM settings 里 disable 'Accelerated 3D Graphics' ,也就是关闭3D图形,试了,没有用。真正解决方法:修复 Winsock LSP(Label Switched Path)。360安全卫士、金山毒霸里的都带有 LSP 工具用于修复 LSP 网络协议。或者手工 重置下网络链接 Winsock,管理员身份打开命令提示符cmd,输入命令 netsh winsock reset,重启系统问题解决!对了,还有个偶尔卡死的问题,解决方法是关闭系统防火墙:打开控制面板,找到 Windows 防火墙,左侧有个“打开或关闭 Windows 防火墙”。