Skip to main content


abstract class %Activate.Interface extends %Library.RegisteredObject

Property Inventory

Method Inventory


property %IDispatchPtr as %Integer [ Final ];
Property methods: %IDispatchPtrDisplayToLogical(), %IDispatchPtrGet(), %IDispatchPtrIsValid(), %IDispatchPtrLogicalToDisplay(), %IDispatchPtrNormalize()


method %GetRefCount() as %Integer
Return the current reference count on an ActiveX object
final method %IDispatchPtrSet(pIDispatchPtr As %Integer) as %Status
Set the internal 'handle'. If the handle references a a valid object, release that object first. Throw an exception If there is an ActiveX error during close
method %MakeVariantReturnValue(pResult As %List, pBinary As %Boolean = 0)
final method Become(ClassName As %String) as %RegisteredObject

Become an instance of the named class by closing the current object and transferring the external objects' 'handle' to the new class. This method is used when you have an Instance of a generic object but you know what kind of Interface it expresses. For example, some properties or methods of ActiveX objects return a generic IDispatch handle but are documented as returning a more specific Interface derived from IDispatch. You can use this method to take advantage of that documented knowlege.

During the execution of this method a test is made to ensure that the external object really does support the requested interface. If not, an exception will be thrown

Inherited Members

Inherited Methods


FeedbackOpens in a new tab