Consultor Eletrônico



Kbase 19759: How to properly implement ENABLE-EVENTS in code calling ActiveX Automation objects
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   12/3/2008
Status: Verified

GOAL:

How to properly implement ENABLE-EVENTS in code calling ActiveX Automation objects

FACT(s) (Environment):

Progress 9.x
OpenEdge 10.x
Windows

FIX:

This example is using Microsoft Excel:

PROCEDURE ExcelEvents.WorkbookDeactivate:
DEFINE INPUT PARAMETER Wb AS COM-HANDLE.
MESSAGE "Quitting" VIEW-AS ALERT-BOX INFO BUTTONS OK.
END PROCEDURE.

DEFINE VARIABLE chExcelApplication AS COM-HANDLE NO-UNDO.
DEFINE VARIABLE chExcelWorkbook AS COM-HANDLE NO-UNDO.

CREATE 'Excel.Application' chExcelApplication.

chExcelApplication:Visible = TRUE.

chExcelWorkbook = chExcelApplication:Workbooks:Open('C:\book1.xls').

chExcelApplication:ENABLE-EVENTS('ExcelEvents').

WAIT-FOR 'CLOSE' OF THIS-PROCEDURE.

RELEASE OBJECT chExcelWorkbook.
RELEASE OBJECT chExcelApplication.