Expand Minimize

WsCreateChannel function

Creates a channel for message exchange with an endpoint.


HRESULT WINAPI  WsCreateChannel(
  _In_      WS_CHANNEL_TYPE channelType,
  _In_      WS_CHANNEL_BINDING channelBinding,
  _In_      const WS_CHANNEL_PROPERTY* properties,
  _In_      ULONG propertyCount,
  _In_opt_  const WS_SECURITY_DESCRIPTION* securityDescription,
  WS_CHANNEL** channel,
  _In_opt_  WS_ERROR* error


channelType [in]

The type of the channel. For channel types, see the WS_CHANNEL_TYPE enumeration. This represents the message exchange pattern for the channel being created.

channelBinding [in]

The channel binding, indicating the protocol stack to use for the new channel. For available channel bindings, see the WS_CHANNEL_BINDING enumeration.

properties [in]

An array of WS_CHANNEL_PROPERTY structures containing optional values for channel initialization. The value of this parameter may be NULL, in which case, the propertyCount parameter must be 0 (zero).

For information on which channel properties can be specified when you create a channel, see the WS_CHANNEL_PROPERTY_ID enumeration.

For information on creating a custom channel, see the Remarks section.

propertyCount [in]

The number of properties in the properties array.

securityDescription [in, optional]

Pointer to a WS_SECURITY_DESCRIPTION structure specifying the security for the channel.

If you are creating a custom channel (using the WS_CUSTOM_CHANNEL_BINDING value of the WS_CHANNEL_BINDING enumeration), the security description must be NULL. See the Remarks section.


Pointer that receives the address of the created channel. When the channel is no longer needed, you must free it by calling WsFreeChannel.

error [in, optional]

Pointer to a WS_ERROR structure that receives additional error information if the function fails.

Return value

If the function succeeds, it returns NO_ERROR; otherwise, it returns an HRESULT error code.

Return codeDescription

One or more arguments are invalid.


Insufficient memory to complete the operation.

Other Errors

This function may return other errors not listed above.



Use the WsOpenChannel function to initiate communication on the channel and to specify the endpoint.

When you create a custom channel (using the WS_CUSTOM_CHANNEL_BINDING value of the WS_CHANNEL_BINDING enumeration), you can specify only the following channel properties:

(See the WS_CHANNEL_PROPERTY_ID enumeration) If initial properties are required to create the custom channel, specify them by using the WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS property.

To pass security information to a custom channel implementation, use the WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS value of the WS_CHANNEL_PROPERTY_ID enumeration.


Minimum supported client

Windows 7 [desktop apps | Windows Store apps]

Minimum supported server

Windows Server 2008 R2 [desktop apps | Windows Store apps]









Community Additions

© 2014 Microsoft