如何使用 tlibimp 在 BCB5 中导入 ActiveX 控件?

Posted

技术标签:

【中文标题】如何使用 tlibimp 在 BCB5 中导入 ActiveX 控件?【英文标题】:How do I import an ActiveX control in BCB5 with tlibimp? 【发布时间】:2009-01-21 17:57:02 【问题描述】:

tlibimp.exe 正确模拟选择所需的标志是什么 '组件 -> 导入 ActiveX 控件 -> 安装' 在 Borland C++ Builder 5 IDE 中?我目前向 tlibimp 传递了一个 ocx 和 -L-,但是与手动导入它的结果相比,它的功能有所损失。

【问题讨论】:

【参考方案1】:

命令行取决于 IDE 正在尝试什么。例如,将组件安装为活动 x。

-A TypeLibrary 文件后缀(默认为 '_TLB', -A- : no 后缀) -D 输出目录

-F TypeLibrary 输出文件名(忽略扩展名)

-N C++ 命名空间名称 -X OCX Wrappers 输出文件名(扩展名被忽略 - C++ 仅)

开关:-(默认如下所示)

-C- 生成C++导入文件

-E+ 为调度接口生成包装类(仅限 C++)

-G+ 使用 'using' 语句公开命名空间

-H+ 为 ActiveX 控件生成 IDE 组件包装器

-J- 生成CORBA IDL源文件

-K- 生成 Pascal CORBA 存根和骨架

-L- 为 OLE 服务器生成 IDE 组件包装器

-O+ 生成 CoClass Creator 包装器

-P+ 生成Pascal导入文件

-Q+ 为 IDE 组件包装器生成“注册”函数

-R+ 为依赖类型库生成文件

-S+ 将 HRESULT stdcall 映射到双接口上的 safecall(仅限 Delphi)

-T- 将 HRESULT stdcall 映射到所有接口上的 safecall(仅限 Delphi)

-V- 为服务器生成事件包装器(仅限 C++)

-W+ 导入文件中的警告

-Yh 导入时忽略[隐藏]标志

-Yr 导入时忽略 [Restricted] 标志

-Yp 导入时忽略 [PreDeclID] 标志

-Ya 组合 -Yh -Yr -Yp

--

迈克尔

【讨论】:

【参考方案2】:

事实证明,功能丢失是由于我正在导入的 ocx 文件未注册。使用这个 activeX 控件的项目仍然编译没有问题,但仍然存在缺陷。 用regsvr32注册ocx解决了这个问题。

【讨论】:

我在使用 Delphi 7 的 tlibImp 时遇到了同样的问题,需要注册 COM 对象以便生成工作。

以上是关于如何使用 tlibimp 在 BCB5 中导入 ActiveX 控件?的主要内容,如果未能解决你的问题,请参考以下文章

如何在python-3中导入urlparse? [重复]

如何在 Jmeter 中导入 Web3?

如何在mac上的python中导入非标准包?此软件包不支持pip安装

如何在反应中导入根路径之外的组件?

如何在 conda 环境中安装 libsvm,以便可以在 anaconda 中导入 svm?

tlibimp.exe 输出在不同的操作系统上有所不同