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

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

【问题讨论】:

    标签: c++builder


    【解决方案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 对象以便生成工作。
      猜你喜欢
      • 2011-07-27
      • 2012-08-30
      • 2013-03-03
      • 1970-01-01
      • 2014-07-18
      • 2013-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多