Função EnumColorProfilesW (icm.h)
Enumera todos os perfis que atendem aos critérios de enumeração especificados.
Sintaxe
BOOL EnumColorProfilesW(
PCWSTR pMachineName,
PENUMTYPEW pEnumRecord,
PBYTE pEnumerationBuffer,
PDWORD pdwSizeOfEnumerationBuffer,
PDWORD pnProfiles
);
Parâmetros
pMachineName
Reservado. Deve ser NULL. Esse parâmetro destina-se a apontar para o nome do computador no qual enumerar perfis. Um ponteiro NULL indica o computador local.
pEnumRecord
Ponteiro para uma estrutura que especifica os critérios de enumeração.
pEnumerationBuffer
Ponteiro para um buffer no qual os perfis devem ser enumerados. Uma MULTI_SZ cadeia de caracteres de nomes de perfil que satisfaz os critérios especificados em *pEnumRecord será colocada nesse buffer.
pdwSizeOfEnumerationBuffer
Ponteiro para uma variável que contém o tamanho do buffer apontado por pBuffer. No retorno, *pdwSize contém o tamanho do buffer realmente usado ou necessário.
pnProfiles
Ponteiro para uma variável que conterá, no retorno, o número de nomes de perfil realmente copiados para o buffer.
Valor retornado
Se essa função for bem-sucedida, o valor retornado será TRUE.
Se essa função falhar, o valor retornado será FALSE. Para obter informações de erro estendidas, chame GetLastError.
Comentários
Vários perfis normalmente são associados a impressoras, com base nos tipos de papel e tinta. Há um perfil padrão para cada dispositivo. Para perfis do ICC (International Color Consortium), a GDI seleciona a melhor entre os perfis associados ao ICC quando seu aplicativo cria um DC (contexto de dispositivo).
Não tente usar EnumColorProfiles para determinar o perfil padrão de um dispositivo. Em vez disso, crie um contexto de dispositivo para o dispositivo e invoque a função GetICMProfile . No Windows Vista e no Windows 7, a função WcsGetDefaultColorProfile também pode ser usada para determinar o perfil de cor padrão de um dispositivo.
Se o membro dwFields da estrutura do tipo ENUMTYPE apontado pelo parâmetro pEnumRecord for definido como ET_DEVICENAME, essa função enumerará todos os perfis de cor associados a todos os tipos de dispositivos anexados ao computador do usuário, independentemente da classe de dispositivo. Se o membro dwFields da estrutura apontada pelo parâmetro pEnumRecord for definido como ET_DEVICENAME ou ET_DEVICECLASS e uma classe de dispositivo for especificada no membro dwDeviceClass da estrutura, essa função enumerará apenas os perfis associados à classe de dispositivo especificada. Se o membro dwFields for definido apenas como ET_DEVICECLASS, a função EnumColorProfiles enumerará todos os perfis que podem ser associados a esse tipo de dispositivo.
Sempre que EnumColorProfiles estiver examinando os perfis associados a um dispositivo específico, os resultados dependem se o usuário optou por usar a lista de perfis em todo o sistema associados a esse dispositivo ou sua própria lista ("por usuário"). Chamar WcsSetUsePerUserProfiles com seu parâmetro usePerUserProfiles definido como TRUE faz com que chamadas futuras para EnumColorProfiles examinem apenas a lista de associações de perfil por usuário do usuário atual para o dispositivo especificado. Chamar WcsSetUsePerUserProfiles com seu parâmetro usePerUserProfiles definido como FALSE faz com que chamadas futuras para EnumColorProfiles examinem a lista de associações de perfil em todo o sistema para o dispositivo especificado. Se WcsSetUsePerUserProfiles nunca tiver sido chamado para o usuário atual, EnumColorProfiles examinará a lista em todo o sistema.
Seu aplicativo pode usar EnumColorProfiles para obter o tamanho do buffer no qual os perfis são enumerados. Ele deve chamar a função EnumColorProfiles com o parâmetro pBuffer definido como NULL. Quando a função retornar, o parâmetro pdwSize conterá o tamanho do buffer necessário em bytes. Seu programa pode usar essas informações para alocar o buffer de enumeração. Em seguida, ele pode invocar EnumColorProfiles novamente com o parâmetro pBuffer definido como o endereço do buffer.
Essa função fornecerá as informações para converter informações de DMP específicas do WCS para o registro EnumType herdado em habilitar a enumeração de perfil consistente. Os padrões serão os mesmos que o ICC se essas informações não estiverem presentes.
Suporte por usuário/LUA
A enumeração é específica do usuário atual. As associações de dispositivos de usuário em todo o sistema e atuais são consideradas. Para a configuração de perfil padrão, as configurações de usuário atuais substituem as do sistema.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho | icm.h |