




 
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 
arg
s 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))