IMessageFilter::HandleInComingCall
Provides an application with a single entry point for all incoming calls.
DWORD HandleInComingCall(
DWORD dwCallType,
| //Type of incoming call
|
HTASK threadIDCaller,
| //Task handle calling this task
|
DWORD dwTickCount,
| //Elapsed tick count
|
LPINTERFACEINFO lpInterfaceInfo
| //Points to INTERFACEINFO structure
|
);
|
|
Parameters
dwCallType
[in] Indicates the kind of incoming call that has been received; valid values
are from the enumeration
CALLTYPE. See the chapter on enumerations for details.
threadIDCaller
[in] Specifies the handle of the task is calling this task.
dwTickCount
[in] Specifies the elapsed tick count since the outgoing call was made if
dwCallType is not CALLTYPE_TOPLEVEL. If
dwCallType is CALLTYPE_TOPLEVEL,
dwTickCount should be ignored.
lpInterfaceInfo
Points to an
INTERFACEINFO structure that contains information about the incoming call. Can also be
NULL.
Return Values
SERVERCALL_ISHANDLED
The application may be able to process the call.
SERVERCALL_REJECTED
The application cannot handle the call due to an unforeseen problem, such as
network unavailability.
SERVERCALL_RETRYLATER
The application cannot handle the call at this time. For example, an
application might return this value when it is in a user-controlled modal state.
Comments
If implemented,
IMessageFilter::HandleInComingCall is called when an incoming OLE message is received.
Depending on the application's current state, the call can either be accepted
and processed or rejected (permanently or temporarily). If SERVERCALL_ISHANDLED
is returned, the application may be able to process the call. Success may
depend on the interface for which the call is destined. If the call cannot be
processed, OLE returns RPC_E_CALL_REJECTED.
Input-synchronized and asynchronous calls are dispatched even if the
application returns SERVERCALL_REJECTED or SERVERCALL_RETRYLATER.
IMessageFilter::HandleInComingCall should not be used to hold off updates to objects during operations such as
band printing. For that purpose, use
IViewObject::Freeze.
You can also use
IMessageFilter::HandleInComingCall to set up the application's state so the call can be processed in the future.
See Also
IViewObject::Freeze,
CALLTYPE,
INTERFACEINFO
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database