call-com-object spec arg* => values
The object and a specification of the method to be called.
A form which is evaluated to yield a COM object.
A symbol which names the COM implementation class. It is not evaluated.
Specifies the method to be called. It is not evaluated.
A symbol naming the method to call.
A symbol naming the interface of the method to call. This is only required if the implementation class class-name has more than one method with the given method-name.
An optional form which when evaluated should yield a COM interface pointer. This is only needed if the definition of the method being called has the interface keyword in its class-spec.
Arguments to the method (see Data conversion when calling COM object methods for details).
Values from the method (see Data conversion when calling COM object methods for details).
The macro call-com-object
invokes the method method-name for the COM class class-name, which should the type or a supertype of the actual type of object. The args and values are described in detail in Data conversion when calling COM object methods.
Note that, because this macro requires a COM object, it can only be used by the implementation of that object. All other code should use call-com-interface
with the appropriate COM interface pointer.
(call-com-object (my-doc doc-impl move) 0 0)
(call-com-object (my-doc doc-impl resize) 100 200)
LispWorks COM/Automation User Guide and Reference Manual - 23 Mar 2017