CONNMGR_CONNECTIONINFO

The CONNMGR_CONNECTIONINFO structure contains information about the connection request.

Syntax

typedef struct _CONNMGR_CONNECTIONINFO {
  DWORD cbSize;
  DWORD dwParams;
  DWORD dwFlags;
  DWORD dwPriority;
  BOOL bExclusive;
  BOOL bDisabled;
  GUID guidDestNet;
  HWND hWnd;
  UINT uMsg;
  LPARAM lParam;
  ULONG ulMaxCost;
  ULONG ulMinRcvBw;
  ULONG ulMaxConnLatency;
} CONNMGR_CONNECTIONINFO;

Members

  • cbSize
    The size of the structure.

  • dwParams
    List of valid parameters; contains the set of CONNMGR_PARAM_* constants. The flags described in the following table define which optional parameters are valid.

    Value Description
    CONNMGR_PARAM_DESTNETID The DestNetId field is valid.
    CONNMGR_PARAM_DESTMAXCOST The MaxCost field is valid.
    CONNMGR_PARAM_MINRCVBW The MinRcvBw field is valid.
  • dwFlags
    List of connection flags; contains the set of CONNMGR_FLAG_*. The flags described in the following table define special connection properties that client applications support; typically, the flags define which proxies are supported by each application.

    Value Description
    CONNMGR_FLAG_PROXY_HTTP HTTP proxy supported.
    CONNMGR_FLAG_PROXY_WAP WAP proxy (gateway) supported.
    CONNMGR_FLAG_PROXY_SOCKS4 SOCKS4 proxy supported.
    CONNMGR_FLAG_PROXY_SOCKS5 SOCKS5 proxy supported.
  • dwPriority
    The priority value of the connection; contains one value from CONNMGR_PRIORITY_*. The flags described in the following table define the priority of the connection. The flags are listed in order, from highest priority to lowest priority.

    Value Description
    CONNMGR_PRIORITY_VOICE Voice connection; highest priority.
    CONNMGR_PRIORITY_USERINTERACTIVE A user-initiated action caused this request, and the user interface is waiting on the creation of this connection.

    This flag is appropriate for an interactive browsing session or if the user selects "MORE" at the bottom of a truncated mail message (for example).

    CONNMGR_PRIORITY_USERBACKGROUND A user-initiated connection that has recently become idle.

    A connection should be marked as idle when it is no longer the user's current task.

    CONNMGR_PRIORITY_USERIDLE Interactive user task that has been idle for an application-specified amount of time.

    As the user runs the application, to help Connection Manager optimize responsiveness to the interactive application while sharing the connection with background applications, the application should toggle the state between CONNMGR_PRIORITY_USERIDLE and CONNMGR_PRIORITY_
    USERINTERACTIVE.

    CONNMGR_PRIORITY_HIPRIBKGND High priority background connection.
    CONNMGR_PRIORITY_IDLEBKGND Idle priority background connection.
    CONNMGR_PRIORITY_EXTERNALINTERACTIVE The connection is requested on behalf of an external entity but is an interactive session (AT Command Interpreter, for example).
    CONNMGR_PRIORITY_LOWBKGND The lowest priority connection.

    Connection occurs only if a higher priority client is already using the same path.

  • bExclusive
    If TRUE, this connection cannot be shared with other applications, no other applications are notified, and any application requesting a connection to the same network is treated as a contender for the same resource and is not permitted to share the existing connection. A decision is made between this connection and the others based on connection priority. If FALSE, the connection is shared among all applications and other applications with an interest in a connection to this network are notified that the connection is available.

  • bDisabled
    If TRUE, Connection Manager determines whether a connection can be made, although the ability to connect is disabled. When Connection Manager reaches the point when it would normally establish a connection, it sets the connection status to CONNMGR_STATUS_CONNECTIONDISABLED.

  • guidDestNet
    Globally unique identifier (GUID) of the network to which the connection is established.

  • hWnd
    Optional window handle to which Connection Manager posts status change messages; if 0, Connection Manager does not post status messages to a window. Regardless of the value of this member, an application can always call ConnMgrConnectionStatus to retrieve the current status of a connection.

  • uMsg
    The message ID received when Connection Manager posts a status change to a window.

  • lParam
    Value placed into the lParam field of the message when posting status changes to a window.

  • ulMaxCost
    Maximum acceptable cost of the connection; if valid, this optional member is set to CONNMGR_PARAM_MAXCOST.

  • ulMinRcvBw
    Minimum acceptable reception bandwidth of the connection; if valid, this optional member is set to CONNMGR_PARAM_MINRCVBW.

  • ulMaxConnLatency
    Maximum acceptable connection latency; if valid, this optional member is be set to CONNMGR_PARAM_MAXCONNLATENCY.

Return Values

None.

Remarks

Each CONNMGR_FLAG_PROXY_* flag in dwFlags means that connection can be specified by configuring an appropriate proxy server (for example, HTTP). This value is appropriate for Microsoft Internet Explorer and other HTTP-based protocols, including HTTP-DAV synchronization. If none of these flags are specified, only a direct IP connection (or tunnel) is attempted.

Connection Manager arbitrates among multiple connections, satisfying as many as possible at a time but giving preference to higher priority connection types.

Requirements

Pocket PC: Windows Mobile 2000 and later
OS Versions: Windows CE 3.0 and later
Header: connmgr.h
Library: cellcore.lib

See Also

Connection Manager

Connection Manager API Structures

Send feedback on this topic to the authors.

© 2005 Microsoft Corporation. All rights reserved.