初始化VCProjectEngineObject(Microsoft.VisualStudio.VCProjectEngine.dll)时出现错误80040154(类未注册的exception)

我试图运行此工具,以便将Visual C ++项目转换为生成文件。 我试图转换项目的项目是在VS2008中编写的,所以我使用的是来自版本9的Microsoft.VisualStudio.VCProjectEngine.dll的引用。

它在这一行失败:

VCProjectEngine vcprojEngine = new VCProjectEngineObject(); 

除了以下例外:

检索具有CLSID {D19A00C4-A7F9-4E14-A5E01-D060B7EB57F3}的组件的COM类工厂失败,原因如下:80040154类未注册(exception来自HRESULT:0x80040154(REGDB_E_CLASSNOTREG))。

当试图用regsvr32注册VCProjectEngine.dll时,我得到一个错误,找不到入口点DllRegisterServer。

任何想法??

提前致谢。

没有太多的好的理由,这将失败,特别是regsvr32步骤。 在该DLL上运行dumpbin / exports。 如果你没有看到DllRegisterServer,那么你已经有一个损坏的安装。 它应该有更多的副作用,你将无法再build立C / C ++项目。

一个标准的故障模式在64位操作系统上运行。 这是32位非托pipe代码,你确实会得到“类未注册”exception。 Project + Properties,Build选项卡,将Platform Target更改为x86。