Função WcsOpenColorProfileW (icm.h)

Cria um identificador para um perfil de cor especificado.

Sintaxe

HPROFILE WcsOpenColorProfileW(
  PPROFILE pCDMPProfile,
  PPROFILE pCAMPProfile,
  PPROFILE pGMMPProfile,
  DWORD    dwDesireAccess,
  DWORD    dwShareMode,
  DWORD    dwCreationMode,
  DWORD    dwFlags
);

Parâmetros

pCDMPProfile

Ponteiro para um DMP do WCS ou uma estrutura de perfil de cor ICC especificando o perfil. Você pode liberar o ponteiro pCDMPProfile depois de criar o identificador. Se o perfil for ICC e seu membro dwType estiver definido como DONT_USE_EMBEDDED_WCS_PROFILES, WcsOpenColorProfile ignorará qualquer perfil WCS inserido dentro do perfil ICC.

pCAMPProfile

Um ponteiro para uma estrutura de perfil que especifica um CAMP (perfil de modelo de aparência de cor) do WCS. Você pode liberar o ponteiro pCAMPProfile depois de criar o identificador. Se FOR NULL, o CAMP padrão será usado e a configuração de usuário atual, WCS_PROFILE_MANAGEMENT_SCOPE_CURRENT_USER, será usada ao consultar o CAMP padrão.

pGMMPProfile

Um ponteiro para uma estrutura de perfil que especifica um GMMP (perfil de modelo de mapa de gama) do WCS. Você pode liberar o ponteiro pGMMPProfile depois de criar o identificador. Se FOR NULL, o GMMP padrão para a intenção de renderização padrão será usado e a configuração do usuário atual, WCS_PROFILE_MANAGEMENT_SCOPE_CURRENT_USER, será usada ao consultar o GMMP padrão. Para obter uma descrição das intenções de renderização, consulte Intenções de renderização.

dwDesireAccess

Um valor de sinalizador que especifica como acessar o perfil de cor especificado. Esse parâmetro deve ter um dos seguintes valores:

Valor Descrição
PROFILE_READ Especifica que o perfil de cor é aberto para acesso somente leitura.
PROFILE_READWRITE Especifica que o perfil de cor é aberto para acesso de leitura e gravação. O valor desse sinalizador será ignorado se o perfil for um perfil do WCS.

dwShareMode

Um valor de sinalizador que especifica as ações a serem executadas ao abrir um perfil de cor contido em um arquivo. Esse parâmetro deve usar um dos seguintes valores, que são definidos em winnt.h:

Valor Descrição
FILE_SHARE_READ Especifica que você pode executar outras operações abertas (para acesso de leitura) no perfil.
FILE_SHARE_WRITE Especifica que você pode executar outras operações abertas (para acesso de gravação) no perfil. Esse valor de sinalizador é ignorado quando um perfil do WCS é aberto.

dwCreationMode

Um valor de sinalizador que especifica as ações a serem executadas ao abrir um perfil de cor se ele estiver contido em um arquivo. Esse parâmetro deve usar um dos seguintes valores, que são definidos em winbase.h:

Valor Descrição
CREATE_NEW Especifica que um novo perfil é criado. Essa função falhará se o perfil já existir.
CREATE_ALWAYS Especifica que um novo perfil é criado. Se um perfil já existir, ele será substituído.
OPEN_EXISTING Especifica que o perfil está aberto. Essa função falhará se o perfil não existir.
OPEN_ALWAYS Especifica que o perfil deve ser aberto se existir um arquivo ICC (International Color Consortium). Se um perfil ICC não existir, o WCS criará um novo perfil ICC. A função falhará para perfis WCS se esse sinalizador estiver definido e um perfil do WCS não existir.
TRUNCATE_EXISTING Especifica que o perfil deve ser aberto e truncado para zero bytes. A função falhará se o perfil não existir.

dwFlags

Um valor de sinalizador que especifica se o perfil WCS inserido deve ser usado. Esse parâmetro não tem efeito, a menos que pCDMProfile especifique um perfil ICC que contenha um perfil WCS inserido.

Esse parâmetro usa um dos seguintes valores:

Valor Descrição
0 Especifica que o perfil WCS inserido será usado e o perfil ICC especificado por pCDMPProfile será ignorado.
DONT_USE_EMBEDDED_WCS_PROFILES Especifica que o perfil ICC especificado por pCDMPProfile será usado e o perfil WCS inserido será ignorado.

Retornar valor

Se essa função for bem-sucedida, o valor retornado será o identificador do perfil de cor aberto.

Se essa função falhar, o valor retornado será NULL.

Comentários

Essa API pegará um conjunto de DMP, CAMP e GMMP e retornará um identificador de perfil do WCS. Os valores NULL para GMMP são válidos. Um valor NULL para CAMP será substituído pelo valor camp padrão.

Essa API também aceitará perfis ICC. O uso de um perfil ICC não garante o processamento pelo mecanismo WCS CITE. O mecanismo WCS só será usado se for passado pelo menos um perfil do WCS. Fluxos de trabalho icc puros serão consistentes com o comportamento herdado.

Você pode usar o identificador que essa função retorna em outras funções de gerenciamento de perfil de cor.

Os sinalizadores dwCreationMode CREATE_NEW, CREATE_ALWAYS e TRUNCATE_EXISTING sempre retornarão HPROFILEs ICC em branco. Se outros sinalizadores dwCreationMode estiverem presentes, a função determinará se o perfil é ICC ou XML do WCS.

No caminho do código ICC, um HPROFILE ICC é retornado usando os sinalizadores de compartilhamento, acesso e criação solicitados, conforme especificado nas tabelas acima.

No caminho do WCS, o sinalizador dwCreationMode OPEN_ALWAYS falhará se o perfil não existir, pois os perfis do WCS não podem ser criados ou editados dentro da arquitetura do WCS (eles devem ser editados fora dele, usando MSXML6). Pelo mesmo motivo, o sinalizador dwShareMode FILE_SHARE_WRITE e o sinalizador dwDesiredAccess PROFILE_READWRITE são ignorados dentro do caminho do WCS.

Depois que o identificador para o perfil de cor for criado, todas as informações usadas para criar esse identificador poderão ser excluídas.

Use a função CloseColorProfile para fechar um identificador de objeto retornado por WcsOpenColorProfile.

Requisitos

Requisito Valor
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
Biblioteca Mscms.lib
DLL Mscms.dll

Confira também