我在 Windows 7 x64 上运行 VMWare Workstation 7。在客户操作系统(也是 Windows 7 x64)中,我安装了 VMWare Tools,但 VMWare Tools 服务已禁用。我以全屏模式运行虚拟机,顶部的 VMWare 工具栏经常显示此工具提示:
要释放输入,请按 Ctrl+Alt
此工具提示会遮挡虚拟机的一部分(通常是我正在使用的程序的菜单),这真是太烦人了。退出全屏模式并再次进入该模式可以摆脱它,但只有在我将鼠标悬停在该工具栏上时它才会重新出现!我该如何一劳永逸地摆脱它?
我尝试添加
hints.hideAll = "TRUE"
到 VM 的 .vmx 文件和 preference.ini,但这些都没有任何帮助。
答案1
我通过进入工作站首选项并取消选择“单击鼠标时抓取键盘和鼠标输入”解决了这个问题。
然后,重新启动工作站。显然,需要在客户机上安装 VMware 工具。
答案2
对于我来说,使用 vmware 工作站界面从来没有实现过这个功能,但你可以使用 HEX 编辑器并修改 vmware.exe 来完成此操作,因此下面是我在工作站 11 上执行此操作的方法。
氢键对 Windows 来说是一个很好的选择。
首先,在程序文件中创建 vmware.exe 文件的备份/副本。
关闭 VMware 工作站。
以管理员身份打开 HxD 并打开
vmware.exe
。打开文件后,搜索 ascii 字符串 (CTRL+F)
To release
。它应该位于偏移量0012A350
@之间0012A390
。将以下字节替换为
00
(asciinull
) 或2E
(ascii.
):从
@&!*@*@(msg.vmui.fullScreen.ungrab.tooltip)To release input, press %s
到:
.....................................................................
小心!不要删除任何字节,请替换它们。文件必须保持相同的大小。
答案3
我将添加一种从命令行修复此问题的方法,该方法在新版本中应该继续有效。
你需要一个很小(2.12 MB)但用途广泛的免费工具,名为sfk
(瑞士锉刀),由StahlWorks 技术公司不管怎样,您都需要第三方工具(HxD 或其他),因为据我所知,Windows 没有本机方法来执行此操作。
您必须搜索十六进制字符串54 6F 20 72 65 6C 65 61 73 65 20 69 6E 70 75 74 2C 20 70 72 65 73 73 20 25 73
(即"To release input, press %s"
)并将其替换为00 6F 20 72 65 6C 65 61 73 65 20 69 6E 70 75 74 2C 20 70 72 65 73 73 20 25 73
(除开头的空字符外,其他均相同)。
这是一个printf
格式字符串,以 0x00 字节结尾:如果将 a 放在首位\0
,则字符串无效,因此后面的零是多余的。我们使用完整的字符串只是为了确保我们瞄准目标。
- 下载
sfk.exe
并将其放在 VMware 文件夹中(或您的 中的任何其他文件夹%PATH%
)。 - 打开提升的命令提示符并将目录更改为 VMware 文件夹。
- 建议复制
vmware.exe
。例如:
copy vmware.exe vmware.exe.bak
- 运行以下命令:(
sfk replace vmware.exe -binary /546F2072656C6561736520696E7075742C207072657373202573/006F2072656C6561736520696E7075742C207072657373202573/ -nosub -yes
您可以使用来验证差异fc /b vmware.exe.bak vmware.exe
。)
本质上它和@MaximePoulin 的一样,但是从命令行替换仅一个字节。
当然,您可以手动完成,但如果您更新或重新安装,将这两个命令放在批处理文件中将节省您的时间并且几乎可以肯定地避免错误。