Platform SDK: Interprocess Communications

DdeSetQualityOfService

The DdeSetQualityOfService function specifies the quality of service (QOS) a raw DDE application desires for future DDE conversations it initiates. The specified QOS applies to any conversations started while those settings are in place. A DDE conversation's quality of service lasts for the duration of the conversation; calls to the DdeSetQualityOfService function during a conversation do not affect that conversation's QOS.

BOOL DdeSetQualityOfService(
  HWND hwndClient,                            // handle to window
  CONST SECURITY_QUALITY_OF_SERVICE *pqosNew, // QOS
  PSECURITY_QUALITY_OF_SERVICE pqosPrev       // prior QOS
);

Parameters

hwndClient
[in] Handle to the DDE client window that specifies the source of WM_DDE_INITIATE messages a client will send to start DDE conversations.
pqosNew
[in] Pointer to a SECURITY_QUALITY_OF_SERVICE structure for the desired quality of service values.
pqosPrev
[out] Pointer to a SECURITY_QUALITY_OF_SERVICE structure that receives the previous quality of service values associated with the window identified by hwndClient.

This parameter is optional. If an application has no interest in hwndClient's previous QOS values, it should set pqosPrev to NULL.

Return Values

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError.

Remarks

If a quality of service has not been specified for a client window, hwndClient, prior to sending a WM_DDE_INITIATE with the wParam set to hwndClient, the system uses the following default quality of service values for the client window:

{ 
   Length = sizeof(SECURITY_QUALITY_OF_SERVICE); 
   ImpersonationLevel = SecurityImpersonation; 
   ContextTrackingMode = SECURITY_STATIC_TRACKING; 
   EffectiveOnly = TRUE; 
} 

Use the DdeSetQualityOfService function to associate a different quality of service with the client window. After you change the quality of service, the new settings affect any subsequent conversations that are started. Once an application starts a DDE conversation using a particular quality of service value, it must terminate the conversation and restart the conversation in order to have a different value take effect.

Requirements

  Windows NT/2000: Requires Windows NT 3.1 or later.
  Windows 95/98: Unsupported.
  Header: Declared in Dde.h; include Windows.h.
  Library: Use User32.lib.

See Also

Dynamic Data Exchange Overview, Dynamic Data Exchange Functions, SECURITY_QUALITY_OF_SERVICE, WM_DDE_INITIATE