Supplies a pointer to the IRunningObjectTable interface on the local Running Object Table (ROT).
WINOLEAPI GetRunningObjectTable(
DWORD reserved, |
//Reserved |
LPRUNNINGOBJECTTABLE *pprot |
//Indirect pointer |
); |
Parameters
Return Values
This function supports the standard return value E_UNEXPECTED, as well as the following:
Remarks
Each workstation has a local ROT that maintains a table of the objects that have been registered as running on that machine. This function returns an IRunningObjectTable interface pointer, which provides access to that table.
Moniker providers, which hand out monikers that identify objects so they are accessible to others, should call GetRunningObjectTable. Use the interface pointer returned by this function to register your objects when they begin running, to record the times that those objects are modified, and to revoke their registrations when they stop running. See the IRunningObjectTable interface for more information.
Compound-document link sources are the most common example of moniker providers. These include server applications that support linking to their documents (or portions of a document) and container applications that support linking to embeddings within their documents. Server applications that do not support linking can also use the ROT to cooperate with container applications that support linking to embeddings.
If you are implementing the IMoniker interface to write a new moniker class, and you need an interface pointer to the ROT, call IBindCtx::GetRunningObjectTable rather than the GetRunningObjectTable function. This allows future implementations of the IBindCtx interface to modify binding behavior.
See Also
IBindCtx::GetRunningObjectTable, IMoniker, IRunningObjectTable