【发布时间】:2015-03-17 11:12:30
【问题描述】:
我正在开发一个 Delphi7 项目,该项目使用 COM 组件与 delphi 代码进行交互。所有这些组件都是用 C# 开发的。涉及所有 COM 组件的 .tlb 和 .dll 文件。也将它们注册在注册表中。其他组件已注册并可在 delphi 代码中使用,除了一个。
当访问特定 COM 对象的函数时,它会引发错误 -
Project ABC.exe 引发异常类 EOleSysError,并显示消息“系统找不到指定的文件”。进程停止。使用 Step 或 Run 继续
我正在努力理解 delphi 中的 COM 部分,并检查了以下区域:
- 导入类型库 - dll 添加并安装在那里
- 注册表 - 存在相同的注册表项
我曾经重建dll,将dll放在delphi代码文件夹中,并制作相应的注册表项以在delphi中使用COM组件。其他人使用相同的程序工作正常,但不是这个。
我还应该检查什么来解决这个问题?
【问题讨论】:
-
显然首先要检查的是位数。 C# 程序集是 64 位的吗?
-
该信息应发送至@DavidHeffernan :o)
-
@SirRufo - 你是对的!
-
@DavidHeffernan - 是的,它是一个 64 位 C# 程序集。
标签: c# delphi dll com delphi-7