IMoniker::IsRunning
Determines
whether the object identified by this moniker is currently loaded and running.
HRESULT IsRunning(
IBindCtx *pbc, |
//Pointer to bind context to be used |
IMoniker *pmkToLeft, |
//Pointer to moniker to the left in the composite |
IMoniker *pmkNewlyRunning |
//Pointer to moniker of a newly running object |
); |
|
Parameters
pbc
[in] Pointer
to theIBindCtx interface on the bind context to be used in this binding
operation. The bind context caches objects bound during the binding process,
contains parameters that apply to all operations using the bind context, and
provides the means by which the moniker implementation should retrieve
information about its environment. For more information, see IBindCtx
pmkToLeft
[in] Pointer
to theIMoniker interface on the moniker to the left of this moniker if
this moniker is part of a composite. This parameter is primarily used by
moniker Implementers to enable cooperation between the various components of a
composite moniker; moniker clients can usually pass NULL.
pmkNewlyRunning
[in] Pointer
to theIMoniker interface on the moniker most recently added to the
Running Object Table (ROT). This can be NULL. If non-NULL, the implementation
can return the results of calling IMoniker::IsEqual
Return Values
The method
supports the standard return value E_UNEXPECTED, as well as the following:
S_OK
The moniker
is running.
S_FALSE
The moniker
is not running.
Remarks
Notes to Callers
If speed is
important when you re requesting services from the object identified by the
moniker, you may want those services only if the object is already
running (because loading an object into the running state may be
time-consuming). In such a situation, you d call IMoniker::IsRunning to
determine if the object is running.
For the
monikers stored within linked objects, IMoniker::IsRunning is primarily
called by the default handler s implementation of IOleLink::BindIfRunning.
Notes to Implementers
To get a
pointer to the Running Object Table (ROT), your implementation should call IBindCtx::GetRunningObjectTable
See Also