How to handle "0x80020009" while trying to load an ActiveX control?

0

I'm working in Progress-4GL, release 11.6, working with appBuilder and procedure editor.

I'm trying to put an OCX DTPicker on a window, which results in following code (±automatically generated by appBuilder):

DEFINE VARIABLE OCX_orderingDate AS WIDGET-HANDLE NO-UNDO.
DEFINE VARIABLE chOCX_orderingDate AS COMPONENT-HANDLE NO-UNDO.
...
PROCEDURE control_load :
/*------------------------------------------------------------------------------
  Purpose:     Load the OCXs    
  Parameters:  <none>
  Notes:       Here we load, initialize and make visible the 
               OCXs in the interface.                        
------------------------------------------------------------------------------*/

&IF "{&OPSYS}" = "WIN32":U AND "{&WINDOW-SYSTEM}" NE "TTY":U &THEN
DEFINE VARIABLE UIB_S    AS LOGICAL    NO-UNDO.
DEFINE VARIABLE OCXFile  AS CHARACTER  NO-UNDO.

OCXFile = SEARCH( "<filename>.wrx":U ).
IF OCXFile = ? THEN
  OCXFile = SEARCH(SUBSTRING(THIS-PROCEDURE:FILE-NAME, 1,
                     R-INDEX(THIS-PROCEDURE:FILE-NAME, ".":U), "CHARACTER":U) + "wrx":U).

IF OCXFile <> ? THEN
DO:
  ASSIGN chOCX_orderingDate = OCX_orderingDate:COM-HANDLE.
  ASSIGN UIB_S = chOCX_orderingDate:LoadControls( OCXFile, "OCX_orderingDate":U).

The rest of the code (with the CREATE CONTROL-FRAME ...) is also present.

When I launch this code, error "0x80020009" is generated at the line with chOCX_orderingDate:LoadControls(...) and I can't even open the file anymore, using the appBuilder (apparently appBuilder fails on the same line).

Apparently error "0x80020009" means there's a problem while registering the OCX component, but I don't understand what this means and how to solve this.

Does anybody have an idea?
Thanks in advance

registry
activex
openedge
progress-4gl
ocx
asked on Stack Overflow Mar 9, 2021 by Dominique

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0