




 
call-dispatch-get-property spec arg * => values
spec ::= ( dispinterface-ptr dispinterface-name method-name )
The interface pointer and a specification of the method to be called.
A form which is evaluated to yield a COM 
i-dispatch
 interface pointer.
A symbol which names the Automation interface. It is not evaluated.
A symbol which names the property getter method. It is not evaluated.
Arguments to the method (see Data conversion when calling Automation methods for details).
Values from the method (see Data conversion when calling Automation methods for details).
The 
call-dispatch-get-property
 macro is used to invoke an Automation property getter method from Lisp. The 
dispinterface-ptr
 should be a COM interface pointer for the 
i-dispatch
 interface. The appropriate Automation property getter method, chosen using 
dispinterface-name
 and 
method-name
, is invoked after evaluating each 
arg
. The 
arg
s must be values that are suitable for the method and of types compatible with Automation. The values returned are as specified by the method signature. In general, property getter methods take no arguments and return the value of the property, but see Data conversion when calling Automation methods for more details.
There is also 
setf
 expander for 
call-dispatch-get-property
, which can be used as an alternative to the 
call-dispatch-put-property macro.
For example, in order to get and set the 
Width
 property of a 
MyDocument
 interface pointer
(call-dispatch-get-property
(doc my-document width))
(setf (call-dispatch-get-property
(doc my-document width))
10)