Starts the implementation of a remote COM object and returns its interface pointer.
com
create-instance clsid &key unknown-outer clsctx riid errorp => interface-ptr
clsid⇩ |
A string or a refguid giving a CLSID to create. |
unknown-outer⇩ |
A COM interface pointer specifying the outer i-unknown if the new instance is to be aggregated. |
clsctx⇩ |
A value from the CLSCTX enumeration. |
riid⇩ |
An optional refiid giving the name of the COM interface return. |
errorp⇩ |
A boolean. The default is t . |
interface-ptr |
A COM interface pointer for riid. |
The function create-instance
creates an instance of the COM server associated with clsid and returns an interface pointer for its riid interface. If riid is nil
, then i-unknown is used.
If the server cannot be started, then an error of type com-error will be signaled if errorp is true, otherwise nil
will be returned.
If unknown-outer is non-nil, it will be passed as the outer unknown interface to be aggregated with the new instance.
clsctx indicate the execution contexts in which an object is to be run. It defaults to CLSCTX_SERVER
.
You must initialize the COM runtime before calling create-instance
(see 1.4 Initializing the COM runtime).
To create an i-dispatch
interface and set an event handler, you can use create-instance-with-events.
(create-instance "000209FF-0000-0000-C000-000000000046")
refguid
refiid
i-unknown
create-object
create-instance-with-events
COM/Automation User Guide and Reference Manual - 01 Dec 2021 19:38:38