【发布时间】:2013-01-19 11:24:03
【问题描述】:
我在 Delphi 中编写了一系列 ActiveX 控件,用于其他开发环境(例如 Visual Studio 或 dBASE for Windows,作为两个示例)
我使用作为 RAD Studio IDE 的一部分提供的 ActiveX 向导为我的基于 VCL 的控件生成 ActiveX“绑定”(为了更好的词),但它似乎没有生成制作它们所需的源代码出现在 IDE 组件托盘上。
通常在那些 IDE(Visual Studio 和 dBASE Plus)上,我可以简单地导入一个 ActiveX 控件,它会显示在他们的工具箱(他们的组件托盘版本)上,并带有他们定义的图标。
好吧,我自己在 Delphi 中生成的 ActiveX 控件没有(它们导入得很好,但没有出现在托盘/工具箱上),过去两周我一直在搜索 Google 试图找到解决方案.
惨遭失败,我决定在这里问:
如何让我的 ActiveX 控件显示在 Visual Studio(和其他)的工具箱中?
感谢您的任何意见/建议。
编辑:一些额外的信息...
我一直在尝试对 XE2 和 XE3 执行此操作,但每次都失败了……但是,当我对 Delphi 2007 执行相同的操作(使用向导)时,组件的图标确实显示在根据需要其他 IDE 的 Pallet/Toolbox。 这意味着该问题是在 Delphi 2007 之后的某个时间引入的,并且可能是某些 RTL/VCL 修改的结果。
【问题讨论】:
-
听起来你需要用 Embarcadero 解决这个问题。
-
我刚刚用 BitButton 创建了一个简单的测试。导入工作。该控件出现在“工具箱”的“常规”部分中,位于“指针”旁边。当我在 VS2012(Oxygene 不是完整的 VS)中的表单上拖动控件时,Studio 告诉我 - 无法导入 ActiveX 控件。请确保已正确注册。但我发现没有有效的 OCX 控件。所以不知道这个测试好不好。
-
@MichaelBunny:你需要先注册 ActiveX Server(Delphi 的 Run->Register ActiveX Server,或者在命令提示符下使用项目文件夹中的
regsvr32 YourControl.DLL)才能真正使用它。跨度> -
OCX 文件确实已注册,并且可以通过 ActiveX 容器对象使用...我只需要它显示在 dBASE Plus 上的 ActiveX 托盘中(这是这个东西的预期用户群) .正如我所说:用 D2007 生产一个,一切正常,D2009 或更高版本,它没有。我在考虑一个 unicode 问题。
标签: windows visual-studio delphi activex dbase