FREEZE_AX_EVENTS

This variable applies only in a thin client environment. During the processing of an ActiveX event, the Windows and thin client runtimes attempt to suspend subsequent ActiveX events until the first event has completed. By default, the thin client runtime also attempts to suspend ActiveX events whenever the application is not processing an ACCEPT statement. To suspend and resume events, the runtime calls the ActiveX function IOleControl::FreezeEvents().

You might want to disable calls to FreezeEvents() for ActiveX controls that discard events while in a FreezeEvents() state. For example, if a user double-clicks in an ActiveX control, the control might generate three events: mouse-down, mouse-up, and double-click. If the COBOL program terminates an ACCEPT statement in response to the mouse-down event, the runtime calls FreezeEvents(), and the ActiveX control might discard the mouse-up and double-click events.

You can disable the FreezeEvents() logic by setting the FREEZE_AX_EVENTS runtime configuration variable to "0" (off, false, no) in the configuration file or programmatically with the SET verb. The default value of FREEZE_AX_EVENTS is "1" (on, true, yes).

When this variable is set to "0", the setting of TC_RESTRICT_AX_EVENTS is ignored.

Note: The FreezeEvents() logic protects against unexpected nesting of ActiveX events and against event procedures running unexpectedly during a CREATE, DISPLAY, MODIFY, INQUIRE, or other operation that waits for results from the thin client. Turning this feature off can cause unexpected behavior.