This function creates a connection request but returns information only after the connection has been established or has failed.
HRESULT WINAPI ConnMgrEstablishConnectionSync( CONNMGR_CONNECTIONINFO *pConnInfo, HANDLE *phConnection, DWORD dwTimeout, DWORD *pdwStatus );
[in] Pointer to a CONNMGR_CONNECTIONINFO structure that contains the parameters that describe the requested connection.
[out] Pointer to the returned connection handle.
[in] Specifies a timeout, in milliseconds, for connection establishment.
[out] Pointer to the final status value. Can be one of the Connection Manager status constants. This parameter is only set if the pointer passed in is a non-null pointer. For details, see Connection Manager Status Constants.
This function uses ConnMgrEstablishConnection and ConnMgrConnectionStatus internally to attempt to fully establish a connection before returning to the caller. The ConnMgrEstablishConnectionSync function does not provide an internal message pump. Therefore, the message queues of any user interface threads that call into this function are blocked until the function returns. A call to this function does not return until a connection has either been established or the attempt to create a connection has failed.
A Windows Mobile application can only have one outstanding connection request at a time. Therefore, once ConnMgrEstablishConnectionSync or ConnMgrEstabishConnection is called, they cannot be called again to create another connection request until the first connection request is released with ConnMgrReleaseConnection.