向 Progress-4GL Windows 应用程序添加标签页控件会在使用 ActiveX 时产生许可证问题

问题描述

我正在创建一个基于窗口的 OpenEdge Progress-4GL 应用程序,我喜欢在其中添加一个标签页。为了做到这一点(因为调色板中没有标签页控件),我尝试添加 OCX (ActiveX) 控件“Microsoft TabStrip Control,version 5.0 (SP2)”。但是,当我尝试这样做时,我收到以下错误消息:

MessageBox title: AB
MessageBox content:

CtrlFrame  
Unable to create control.

Het licentie bestand voor genoemde ActiveX control is niet gevonden.

最后一句是荷兰语,意译为:“未找到提及 ActiveX 控件的许可文件。”

我应该怎么做才能将提到的 ActiveX 控件添加到我的窗口?
或者,甚至更好:是否有一个标准的“标签页”控件可用于创建 Progress-4GL 基本的基于 Windows 的应用程序?

在进一步调查后进行编辑

与此同时,我从目录 C:\Windows\SysWOW64\ 启动了命令 regsvr32 comctl32.ocx,结果如下:

  • 以普通用户身份启动:命令失败,错误号为“0x8002801c”。这似乎是由于用户权限所致。
  • 管理员身份启动:命令成功,但似乎仍然无法使用上述控件。

安装 Visual Studio 后编辑

即使安装了 Visual Studio 2019 版本 16.8.3,问题似乎仍未解决。安装了以下组件:

Workloads : 
  Web & Cloud (4)
    ASP.Net and web development
    Python development
  Desktop & Mobile (5)
    .NET desktop development
    Desktop development with C++
    Universal Windows Platform development
  Other Toolsets (6)
    .Net Core cross-platform development

Individual components : Development activities (filtered on "Basic")

    C# and Visual Basic

显然所需的许可证不在安装中。我需要添加什么?

解决方法

错误消息表明您没有该 Active X 控件的开发者许可证。某些(旧的)Visual Studio 安装提供该许可。

您的选择是:

a) 通过仍然支持 Active X 的 Visual Studio/Visual Basic 许可证获得该许可证,例如 VB6,请注意,Microsoft 可能在 15 年前从 Visual Studio 中删除了该许可证。

b) 找到不同的选项卡文件夹 Active X Control(供应商仍支持)。 Codejock 组件在 AVM 中运行良好:https://codejock.com/products/controls/?2yn6s14z=p1z

c) 从 Progress Software 进入 ADM2 框架。这提供了一个纯粹用 ABL 编写的选项卡文件夹(不漂亮)。但是在 2021 年学习 ADM2 似乎真的很痛苦。它不再由 Progress Software 维护

d) 切换到 Progress Developer Studio 并开始使用 GUI for .NET (https://docs.progress.com/de-DE/bundle/openedge-gui-for-net-primer-117/page/Object-oriented-Programming-in-ABL.html)。您可以基于(任何).NET WinForms Control 基于 GUI for .NET 构建 UI。但是,OpenEdge Studio 没有为此提供图形设计器。

e) 根据图像和按钮构建您自己的纯 ABL 选项卡文件夹。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...