我最近安装了Delphi Berlin。没有工作,所以我当天卸载了它。 现在我的Delphi XE7停止工作了。当我尝试编译任何东西时,我收到此错误,而且我不知道如何修复它。
无法转换类型为' System .__ ComObject'的COM对象。接口 输入' Borland.Studio.Interop.IInteropMessageService'。这个操作 失败,因为QueryInterface调用了COM组件 接口与IID' {FF877130-F96F-3885-9A3E-3093A3C1D831}'失败了 出现以下错误:加载类型库/ DLL时出错。 (例外 来自HRESULT:0x80029C4A(TYPE_E_CANTLOADLIBRARY))
错误就像上面所示。没有提到源文件。
我已经尝试使用'修复'由Embarcadero提供,但他们的工具不起作用:
C:\Delphi\Delphi XE7\bin>tregsvr -t Borland.Studio.Interop.tlb
Embarcadero Turbo Register Server(32) -- COM Server Registration utility.
Version 1.3 Copyright (c) 1997-2010 Embarcadero Technologies, Inc.
Type library name: C:\Delphi\Delphi XE7\bin\Borland.Studio.Interop.tlb
Type library GUID: {F939BACD-3FD5-437A-833F-BA3535A45966}
Error: Error accessing the OLE registry
FIX(由@rruz建议):上面的实用程序需要在" Admin" (提升)权限。谢谢@RRuz。
答案 0 :(得分:0)
我有同样的问题,但情况更糟。
我还必须使用以下命令注册此类型库。以提升的权限运行此文件:
tregsvr -t Borland.Studio.ToolsAPI.tlb
可能是由于将Delphi安装移至其他文件夹(最初安装在错误的文件夹中)引起的,迁移向导解决了其中的一些问题,但显然不是全部,现在可以重命名。
机器有点呆板,可能是因为进程监视器仍在运行,所幸该工具的新版本有效,使我得以找到此问题。
此工具显示所有查询的注册表项...并且此特定工具以“找不到名称”的形式弹出。
我这样做如下:
立即停止捕获事件。
然后分析日志;)