这篇文章提供了 VMconnect.exe 应用程序错误最适用的解决方案;无法连接到在服务器或基于客户端的设置中运行 Hyper-V 的主机上的虚拟机。vmconnect 程序随 Hyper-V 一起提供,位于以下目录C:\Program Files\Hyper-V\vmconnect.exe中。
当您尝试使用 VMconnect.exe 应用程序连接到 Windows Server 或 Windows 客户端基于 Hyper-V 的计算机上的虚拟机时,会发生此错误。以下是错误发生时您可能会收到的完整错误消息:
不会建立连接,因为凭据可能不会发送到远程计算机。如需帮助,请联系您的系统管理员。
您想再次尝试连接吗?
什么是 VMconnect?
对于专有Hyper-V虚拟化技术的新手,虚拟机连接 (VMConnect) 是一种可用于连接到虚拟机以在虚拟机中安装来宾操作系统或与之交互的工具。您可以使用 VMConnect 执行的一些任务包括:
- 启动和关闭虚拟机
- 连接到 DVD 映像(.iso 文件)或 USB 闪存驱动器
- 创建检查点
- 修改虚拟机的设置
VMconnect.exe 应用程序错误;无法连接到虚拟机
此VMconnect.exe 应用程序错误;如果基于 Windows 机器 Hyper-V 的计算机上的凭据安全服务提供程序 (CredSSP) 策略未启用以从远程位置验证用户凭据,则会出现无法连接到虚拟机问题。要解决此问题,您可以执行以下任一操作并查看适合您的方法:
- 删除 Hyper-V 中保存的凭据
- 修改(创建 CredSSP 策略)注册表
- 通过组策略启用用户远程凭据的身份验证
让我们看看所提到的决议所涉及的步骤。
1] 删除 Hyper-V 中保存的凭据
Hyper-V 将缓存用于访问来宾虚拟机的凭据。为避免潜在的安全漏洞,删除凭据的选项允许从系统中删除任何已保存的凭据。
由于VMconnect.exe 应用程序错误,您无法连接到Hyper-V 中的虚拟机,很可能是保存的凭据缓存已损坏,只需要重置即可。因此,要删除 Hyper-V 中保存的凭据以解决手头的问题,请执行以下步骤:
- 在 Hyper-V MMC 管理单元中,右键单击托管要连接的虚拟机的 Hyper-V 服务器。
- 单击Hyper-V 设置。
- 单击用户凭据,
- 接下来,取消选中自动使用默认凭据(无提示)选项。
- 单击应用。
- 单击删除保存的凭据。
- 单击删除。如果没有保存的凭据,删除按钮将变灰。
- 单击确定。
对您希望在连接到虚拟机时提示输入凭据的每个 Hyper-V 服务器重复上述步骤。
2]修改(创建CredSSP策略)注册表
如果计算机上未正确设置 CredSSP 策略,则会发生此错误。在这种情况下,您可以在几个注册表子项下手动创建策略条目,这将仅启用计算机上 Microsoft 虚拟控制台服务的身份验证。由于这是注册表操作,建议您备份注册表 或 创建系统还原点作为必要的预防措施。完成后,您可以按以下步骤进行:
- 按Windows 键 + R调用“运行”对话框。
- 在“运行”对话框中,键入regedit并按 Enter 以打开注册表编辑器。
- 导航或跳转到下面的注册表项路径:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowDefaultCredentials
- 在右窗格中的位置,右键单击空白区域,然后选择新建>字符串值 以创建注册表项 Hyper-V,然后按 Enter。
- 接下来,双击新条目以编辑其属性。
- 在值数据字段中键入Microsoft Virtual Console Service/*。
- 单击确定或按 Enter 键以保存更改。
- 现在,对以下剩余的注册表子项重复这些步骤:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowFreshCredentials
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowFreshCredentialsDomain
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowFreshCredentialsWhenNTLMOnly
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowFreshCredentialsWhenNTLMOnlyDomain
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowSavedCredentials
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowSavedCredentialsDomain
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowSavedCredentialsWhenNTLMOnly
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowDefaultCredentialsDomain
- 完成后退出注册表编辑器。
3] 通过组策略启用用户远程凭据的身份验证
要在基于 Windows Hyper-V 的计算机上配置组策略设置以启用对用户远程凭据的身份验证,请按照下面概述的步骤操作。GPO 配置将使用来自任何计算机的任何服务主体名称 (SPN) 来启用远程凭据的身份验证。
- 在“运行”对话框中键入gpedit.msc并按 Enter 以打开组策略编辑器。
- 在本地组策略编辑器中,使用左窗格导航到以下路径:
计算机配置 > 管理模板 > 系统 > 凭据委派
- 在右窗格中,双击允许委派默认凭据 以编辑其属性。
如果您使用的是 NTLM 身份验证,请改为选择并修改允许使用仅 NTLM 服务器身份验证条目委派默认凭据。
- 在打开的策略窗口中,将单选按钮设置为Enabled。
- 接下来,勾选Concatenate OS defaults with inputs above选项。
- 接下来,单击“显示” 按钮
现在,验证远程用户的计算机是否包含在列表中。如有必要,您可以在“值”字段中手动输入远程用户的计算机。您还可以使用通配符(例如 *)来选择所有计算机。
- 完成后,单击确定退出。
- 单击应用>确定以保存更改。
- 关闭组策略。
您如何修复由于管理程序未运行而无法启动虚拟机?
如果您没有将Hyper-V hypervisor设置为开机后自动打开,可能会出现Virtual machine could not be started because the hypervisor is not running的错误信息。在这种情况下,要解决此问题,您可以使用bcdedit命令在启动数据文件中重新配置它以将 Hyper-V 设置为自动启动。一般来说,此错误可能是由于错误的 BIOS 设置禁用了虚拟化、Hyper-V 功能或 DEP。也可能是由于修改了 Windows 设置或最新更新。