The interface pointer and a specification of the method to be called.
A form which is evaluated to yield a COM interface pointer.
A symbol which names the com interface. It is not evaluated.
A symbol which names the method. It is not evaluated.
Arguments to the method (see Data conversion when calling COM methods for details).
The macro call-com-interface
invokes the method method-name for the COM interface interface-name, which should the type or a supertype of the actual type of interface-ptr. The args and values are described in detail in Data conversion when calling COM methods.
This example invokes the COM method GetTypeInfo
in the interface IDispatch
.
(defun get-type-info (disp tinfo &key
(locale LOCALE_SYSTEM_DEFAULT))
(multiple-value-bind (hres typeinfo)
(call-com-interface
(disp i-dispatch get-type-info)
tinfo locale)
(check-hresult hres 'get-type-info)
typeinfo))
LispWorks COM/Automation User Guide and Reference Manual - 23 Mar 2017