我们正在尝试将单元测试添加到遗留的 c++ COM 应用程序中。我们还需要我们的构建机器能够运行单元测试,以确保每个构建都没有引入错误。但是,我们不希望构建机器必须注册 com dll,以便一台构建机器可以并行构建多个版本。我们假设我们可以更改为使用带有清单文件的免注册 com,但我很难让它发挥作用。还没有在我们的代码库上,而只是在 Microsoft 提供的基本示例上。
我一直在使用这个页面http://msdn.microsoft.com/en-us/library/ms973913.aspx#rfacomwalk_topic8
当我尝试使用未注册的 dll 运行以使用清单文件时,它根本不起作用,我得到“类未注册错误”
他们提供的示例工作正常(使用 c++ com 服务器和 c++ 客户端),但是当我重建它们时它们不起作用。
我们使用的是 Visual Studio 2013,因此在我看来,免费注册 com 的工作方式发生了很大变化,这使得本教程与较新的编译器不兼容。
谁能指出我在最新版本的 Visual Studio 中使用免费注册 com 的资源?当我到达那里时,为了使我们自己的应用程序中的事情进一步复杂化,我们使用的是 VS 2013,但针对的是 2010 编译器,希望这不会有太大的不同。
此外,如果有比清单文件更好的方法在 com 组件上运行 c++ 单元测试而不注册,我也想听听这些。
谢谢你的帮助。