7.3.1 Callbacks Resulting from Actions by the Client Application

Action:OleActivate is called and the server application is not running.

When the client application invokes an appropriate verb for an embedded object, the server applicaton is launched with the /Embedding option, causing it to call OleRegisterServer before yielding and remaining invisible.

OLESVR.DLL makes these callbacks in the following order:

Server Callback

Edit

Document Callback

GetObject

Object Callbacks

SetData
Sequence of EnumFormats calls
DoVerb

Action:OleActivate is called and the server application is running with no open document.

OLESVR.DLL makes the following callbacks:

Server Callback

Edit

Document Callback

GetObject

Object Callbacks

SetData
Sequence of EnumFormats calls
DoVerb

Action:OleActive is called while conversation exist between server and client applications.

OLESVR.DLL makes the following callback:

Object Callback

DoVerb

Action:OleCreate is called by the client application (user chooses Insert Object).

If the server application not running, it is started using the /Embedding option, causing it to call OleRegisterServer before yielding and remaining invisible.

OLESVR.DLL makes the following callbacks:

Server Callback

Create

Document Callback

GetObject

Object Callbacks

Sequence of EnumFormats calls
Show

Action:Open or activate a link with the server application not running (OleActivate is called).

The server is started with /Embedding <filename> option, causing the server application to call OleRegisterServer and OleRegisterServerDoc (specified by <filename>, if valid), before yielding and remaining invisible.

OLESVR.DLL makes the following callbacks:

Document Callback

GetObject

Object Callbacks

Sequence of EnumFormats calls
GetData
DoVerb

Action:Open or activate a link with the server application running, but the server document not open (OleActivate is called).

OLESVR.DLL makes the following callbacks:

Server Callback

Open

Document Callback

GetObject

Object Callbacks

Sequence of EnumFormats calls
GetData
DoVerb

Action:Open or activate a link with a server document open but no client application in conversation with the item in the document (OleActivate is called).

This situation is present when the client application is started before the server document is opened.

OLESVR.DLL makes the following callbacks:

Document Callback

GetObject

Object Callbacks

SetData
Sequence of EnumFormats calls
DoVerb

Action:Open or activate a link with a server document open but a different client application is in conversation with the item in the document (OleActivate is called).

This situation is present when the client application is started after some other client has established conversation with the open server document.

OLESVR.DLL makes the following callbacks:

Object Callbacks

Sequence of EnumFormats calls
GetData
DoVerb

Action:OleActivate is called with the client application in conversation with the item in the server document.

OLESVR.DLL makes the following callback:

Object Callback

DoVerb

Action:OleUpdate is called to update an embedded object with the server application not running.

This situation is present after certain calls to OLECLI.DLL, such as OleSetBounds or OleSetTargetDevice. The server application is started with the /Embedding command line option, causing the server to call OleRegisterServer before yielding, and remaining invisible.

OLESVR.DLL makes the following callbacks:

Server Callback

Edit

Document Callback

GetObject

Object Callbacks

SetData
Sequence of EnumFormats calls
GetData

Document Callback

Close

Server Callbacks

Edit

Action:OleUpdate is called to update an embedded object with the server application running but the document not open.

This situation is present after certain calls to OLECLI.DLL, such as OleSetBounds or OleSetTargetDevice.

OLESVR.DLL makes the following callbacks:

Server Callback

Edit

Document Callback

GetObject

Object Callbacks

SetData
Sequence of EnumFormats calls
GetData

Document Callback

Close

Action:OleUpdate is called to update an embedded object in a document that is in conversation with the server application.

This situation is present after certain calls to OLECLI.DLL, such as OleSetBounds or OleSetTargetDevice.

OLESVR.DLL makes the following callbacks:

Object Callbacks

SetData
Sequence of EnumFormats calls
GetData

Action:OleUpdate is called to update a link with the server application not running.

The server application is started with the /Embedding <filename> command line option, causing the server to call OleRegisterSever and OleRegisterServerDoc (specified by <filename>, if valid), before yielding, and remaining invisible.

OLESVR.DLL makes the following callbacks:

Document Callback

GetObject

Object Callbacks

Sequence of EnumFormats calls
GetData

Server Callback

Release

Action:OleUpdate is called to update a link with the server application running but the server document not open.

OLESVR.DLL makes the following callbacks:

Server Callbacks

Open

Document Callbacks

GetObject

Object Callbacks

Sequence of EnumFormats calls
GetData

Document Callbacks

Close

Action:OleUpdate is called to update a link with the server document open but no client application in conversation with the item in the document.

OLESVR.DLL makes the following callbacks:

Document Callbacks

GetObject

Object Callbacks

Sequence of EnumFormats calls
GetData

Action:OleUpdate is called to update a link with the server document open and the client application in conversation with the item in the document.

OLESVR.DLL makes the following callbacks:

Object Callbacks

Sequence of EnumFormats calls
GetData

Action:OleClose, OleDelete, or OleRelease is called to destroy an open embedded object in a client document:

OLESVR.DLL makes the following callback:

Document Callback

Close