将新组件拖放到表单上时出现错误消息"类未注册"

use*_*639 3 delphi components activex ocx

使用运行Delphi 2010的Windows XP.

我已经获得了一个名为CsdEft.ocx的第三方软件包(用于连接到EFTPOS终端)

要安装,我做了以下事情:

  • 选择"导入组件"
  • 选择"导入ActiveX控件"
  • 选择"添加",然后选择CsdEft.ocx.显示所选的OCX.点击下一步.

    显示对话框:

    班级名称: TCscEFT

    托盘页面: ActiveX

    单位目录名称: C:\Delphi\Components

    搜索路径: $(BDS)\lib;$(BDSUSERDIR)...................

    生成组件包装 - 已检查

  • 点击下一步.
  • 选择"安装到新包"
  • 输入EFTPOS作为包名称.
  • 单击完成.

    对话框显示:

    已安装包C:\ Documents and Settings .............\EFTPOS1.bpl.以下组件已注册:TCsdEft.

好 .一切都很好看.

我可以在Component Pallet的ActiveX页面中看到该组件.

但是当我尝试选择组件并将其放在表单上时,我得到"未注册类"错误.

希望有人可以给我一些指向这里错误的指针.

Rem*_*eau 14

听起来像OCX本身没有在Windows上使用命令行regsvr32.exe工具注册.您直接导入了OCX文件,因此IDE基于OCX的嵌入式TypeLibrary创建了一个组件包装器,但是包装器将尝试通过实例化ActiveX对象CoCreateInstance(),因此如果CoCreateInstance()找不到,则会出现"Class not registered"错误OCX.