The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

WcsEnumColorProfiles function

Enumerates all color profiles that satisfy the enumeration criteria in the specified profile management scope.


BOOL WINAPI WcsEnumColorProfiles(
  _In_      WCS_PROFILE_MANAGEMENT_SCOPE profileManagementScope,
  _In_      PENUMTYPEW                   pEnumRecord,
  _Out_     PBYTE                        pBuffer,
  _In_      DWORD                        dwSize,
  _Out_opt_ PDWORD                       pnProfiles


profileManagementScope [in]

A WCS_PROFILE_MANAGEMENT_SCOPE value specifying the scope of this profile management operation.

pEnumRecord [in]

A pointer to a structure specifying the enumeration criteria.

pBuffer [out]

A pointer to a buffer in which the profile names are to be enumerated. The WcsEnumColorProfiles function places, in this buffer, a MULTI_SZ string that consists of profile names that satisfy the criteria specified in *pEnumRecord.

dwSize [in]

A variable that contains the size, in bytes, of the buffer that is pointed to by pBuffer. See Remarks.

pnProfiles [out, optional]

An optional pointer to a variable that receives the number of profile names that are copied to the buffer to which pBuffer points. Can be NULL if this information is not needed.

Return value

If this function succeeds, the return value is TRUE.

If this function fails, the return value is FALSE. For extended error information, call GetLastError.


Use the WcsEnumColorProfilesSize function to retrieve the value for the dwSize parameter, which is the size, in bytes, of the buffer pointed to by the pBuffer parameter.

If the profileManagementScope parameter is WCS_PROFILE_MANAGEMENT_SCOPE_SYSTEM_WIDE, only system-wide associations of profiles to the device are considered. If profileManagementScope is WCS_PROFILE_MANAGEMENT_SCOPE_CURRENT_USER, only per-user associations for the current user are considered. If WcsSetUsePerUserProfiles has never been called for this user, or if WcsSetUsePerUserProfiles was most recently called for this user with its usePerUserProfiles parameter set to FALSE, then WCSEnumColorProfiles returns an empty list.

If WCS_PROFILE_MANAGEMENT_SCOPE_CURRENT_USER (the current user setting) is present, it overrides the system-wide default for the profileManagementScope parameter.

This function is executable in Least-Privileged User Account (LUA) context.


Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2008 [desktop apps only]







Unicode and ANSI names

WcsEnumColorProfilesW (Unicode) and WcsEnumColorProfilesA (ANSI)

See also

Basic Color Management Concepts
Windows Color System Schemas and Algorithms