您的位置:首页 > 其它

VirtualBox COM获取对象失败

2017-07-09 17:58 615 查看
原文地址:http://blog.csdn.net/zp_00000/article/details/70207445

错误详情

1. 先来看看错误详情
获取 VirtualBox COM 对象失败.


应用程序将被中断.


Failed to instantiate CLSID_VirtualBox w/ IVirtualBox, CLSID_VirtualBox w/ IUnknown works.


PSDispatch looks broken by some installer featuring the broken oleaut32.msm module as a component.




See also https://support.microsoft.com/en-us/kb/316911 .


返回 代码:E_INVALIDARG (0x80070057)

组件:VirtualBoxClientWrap

界面:IVirtualBoxClient {d2937a8e-cb8d-4382-90ba-b7da78a74573}


通过错误描述可以看出oleaut32模块加载的时候发生中断。

2. VirtualBox版本

Version 5.1.18 Edition


解决

解决方法:

1.
修改注册表中如下两项:

HKEY_CLASSES_ROOT\CLSID\{00020420-0000-0000-C000-000000000046}

HKEY_CLASSES_ROOT\CLSID\{00020424-0000-0000-C000-000000000046}


2.
分别修改上面两项中的 InprocServer32的默认值为

C:\Windows\system32\oleaut32.dll


具体操作

1.打开注册表(window + R 打开运行)



2.找到注册表中的需要修改的两项

 


 

3.点击InprocServer32在右侧面板中对默认值(和InprocServer32)进行内容修改

修改前:(修改时可以通过点击右键进行选项选择也可以直接双击名称进行修改)



 修改后:



注意:老版本的VirtualBox只有默认或者InprocServer32项,将两者的内容同时修改为

C:\Windows\system32\oleaut32.dll


4.点击开启VirtualBox即可成功



 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: