0

我正在尝试在 Windows 7 上使用 VirtualBox sdk。为此,我使用 VirtualBoxSDK\bindings\mscom\samples\ 中提供的示例代码作为启动。此示例包含以下代码:

 /* Instantiate the VirtualBox root object. */
    rc = CoCreateInstance(CLSID_VirtualBox,       /* the VirtualBox base object */
                          NULL,                   /* no aggregation */
                          CLSCTX_LOCAL_SERVER,    /* the object lives in a server          process on this machine */
                          IID_IVirtualBox,        /* IID of the interface */
                          (void**)&virtualBox);

    if (!SUCCEEDED(rc))
    {
        printf("Error creating VirtualBox instance! rc = 0x%x\n", rc);
        break;
    }

代码构建正常,链接正常,但是当我运行它时,我得到: 创建 VirtualBox 实例时出错!rc = 0x80040154(无法加载文件或程序集错误)。我假设没有服务器端(可能)会提供我尝试使用 CoCreateInstance() 创建的 COM 对象。我只是开始提供提供的示例,但我假设应该有一些服务器也在运行?!提供的文档没有提及有关某些服务器的任何内容,但这就是我的想法。谢谢

4

2 回答 2

0

0x80040154 是“类未注册”。

  1. 尝试使用 regsvr32 注册组件
  2. 如果您尝试实例化的组件是 64 位,则构建一个 64 位项目
于 2013-10-25T11:20:19.360 回答
0

问题似乎来自 COM 对象。此示例试图获取服务器 COM 对象。解决方案是安装并启动 Virtual Box 应用程序,这代表服务器端。然后,这个服务器由这个提供的“客户端”操作。

于 2013-11-03T15:53:51.850 回答