Windows虚拟机上的错误代码0x80004005和0x80070035

今天遇到了一个很奇怪的问题。有些虚拟机无法访问网络共享文件夹。当用文件浏览器打开共享文件夹时会弹出Unspecified Error 0x80004005错误。如果在开始 – 运行 里打开相同的文件夹又会提示The network path was not found 0x80070035

[do_widget “Language Switcher” wrap=aside title=false]

后来发现连本机的 C$admin$
都打不开,这看起来很像是操作系统层的问题。网上人们说可以禁用IPv6、启用NETBIOS、或者更改本地策略组等等。但这些都不适合我的问题。进一步研究后我发现这个故障和lanman服务有关。不知道怎么搞的注册表中HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlNetworkProviderOrder下的Providerorder
键下的LanmanWorkstation
被移除了。只要把这个加进去就好了。人们说这是因为VMware Tools升级导致的。我做了个实验,在ESXi 5.1 Update1上跑了个Windows 2008 R2企业版,装好VMware Tools后把这台机器迁移到另外一台 ESXi 5.5 Update2上并升级VMware Tools到相应的版本。我并没有发现该键值被修改。

以下是一些参考链接:

Windows guest cannot update hgfs.dat or vmhgs.dat

ProviderOrder