Compartilhar via


Chaves do Registro do WCS

O WCS usa chaves do Registro para sinalizar que determinados eventos de perfil de cor ocorreram. Os aplicativos devem consultar essas chaves do Registro quanto ao estado atualizado do perfil de cor do sistema.

Perfil de cor ativo alterado

Os aplicativos podem querer responder a eventos de alteração de perfil de cor para um dispositivo monitor; isso garante que eles sempre tenham informações precisas de cores para seu destino, mesmo que o usuário ou outro aplicativo tenha alterado o perfil ativo do dispositivo.

Aplicativos da área de trabalho

Os aplicativos da área de trabalho devem escutar alterações no registro para determinar quando as associações de perfil de cor foram alteradas usando RegNotifyChangeKeyValue. Um aplicativo deve registrar-se tanto para alterações de associação de perfil por usuário quanto para alterações em todo o sistema.

RegNotifyChangeKeyValue deve ser inicializada com um HKEY fornecido pelo RegOpenKeyEx. RegOpenKeyEx deve ser inicializado usando os seguintes locais de árvore do Registro:

   
Associações de perfil por usuário HKEY_CURRENT_USER SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM\ProfileAssociations\Display\{4d36e96e-e325-11ce-bfc1-08002be10318}
Associações de perfil em todo o sistema HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e96e-e325-11ce-bfc1-08002be10318}

 

Quando o aplicativo é notificado sobre uma alteração de chave do Registro, ele deve primeiro consultar se associações por usuário ou em todo o sistema estão sendo usadas chamando WcsGetUsePerUserProfiles. Em seguida, ele deve chamar WcsGetDefaultColorProfile com o valor WCS_PROFILE_MANAGEMENT_SCOPE certo para obter o novo perfil de cor ativo para o monitor. Observe que nem todas as alterações de chave do Registro corresponderão a uma alteração real no perfil de cor atualmente ativo; o aplicativo verifica se o perfil retornado por WcsGetDefaultColorProfile realmente foi alterado.

Aplicativos universais do Windows (UWP)

Os Aplicativos Universais do Windows não têm acesso às chaves do Registro acima. Em vez disso, eles devem registrar um manipulador para o eventoDisplayInformation.ColorProfileChanged. Esse evento é acionado sempre que o perfil de cor ativo do monitor no qual o aplicativo está em execução é alterado. ColorProfileChanged leva em conta se associações de perfil por usuário ou de todo o sistema estão sendo usadas; essas informações são abstraidas de aplicativos UWP.

Ao responder ao evento ColorProfileChanged, o aplicativo deve consultar o perfil ativo no momento usando DisplayInformation.GetColorProfileAsync.