A variable which is bound to interface-ptr while the form s are evaluated.
A form which is evaluated to yield a COM interface pointer.
A form to be evaluated.
When the macro
with-temp-interface
evaluates the
form
s, the variable
var
is bound to the value of
interface-ptr
. When control leaves the body (whether directly or due to a non-local exit),
release
is called with this interface pointer.
This example invokes the COM method
GetDocumentation
in the interface
ITypeInfo
on an interface pointer which must be released after use.
(defun get-tinfo-member-documentation (disp tinfo
member-id)
(with-temp-interface (typeinfo)
(get-type-info disp tinfo)
(call-com-interface (typeinfo i-type-info
get-documentation)
member-id)))