# cnfSetMemberAttributeList

Sets the value of several member attributes with a single function invocation.

#### Prototype

DWORD cnfSetMemberAttributeList ( CNFRESOURCEHD cnfresourcehd, DWORD memberid, DWORD *attributes, INT32 *values, unsigned count)

Argument | Description
cnfresourcehd | Handle returned by cnfOpenResource.
memberid | Member identifier returned by cnfJoinConference or cnfGetMemberList.
attributes | Pointer to the array of attributes to set.
values | Pointer to the values corresponding to the attributes.
count | Number of entries in attributes and values.

#### Return values

Return value | Description
SUCCESS |
CTAERR_BAD_ARGUMENT | attributes or values is NULL.
CTAERR_INVALID_HANDLE | cnfresourcehd is not a valid conference resource handle.
CNFERR_BOARD_TIMEOUT | Board timed out while waiting for a response message.
CNFERR_INVALID_ATTRIBUTE | One or more attributes in the array attributes is not a valid attribute for a member.
CNFERR_INVALID_PARAMETER | value is inconsistent or out of range for the given attribute.

#### Details

Use cnfSetMemberAttributeList to pass an array of attributes instead of calling cnfSetMemberAttribute several times to set each attribute value separately.

Refer to cnfSetMemberAttribute and Setting member attributes for information about member attributes.

#### Example

DWORD attributeList[3] = {
MEMBER_ATTR_EC_ENABLE,
MEMBER_ATTR_EC_GAIN,
MEMBER_ATTR_EC_PREDELAY,
};
INT32value[3] = { TRUE, 0, 5};
error = cnfSetMemberAttributeList( cnfresourcehd, memberid,
attributeList, values, 3);