Teilen über


WCS-Registrierungsschlüssel

WCS verwendet Registrierungsschlüssel, um zu signalisieren, dass bestimmte Farbprofilereignisse aufgetreten sind. Apps sollten diese Registrierungsschlüssel nach dem aktualisierten Systemfarbprofilstatus abfragen.

Aktives Farbprofil geändert

Apps möchten möglicherweise auf Farbprofiländerungsereignisse für ein Monitorgerät reagieren; Dadurch wird sichergestellt, dass sie immer genaue Farbinformationen für ihr Ziel haben, auch wenn der Benutzer oder eine andere App das aktive Profil für das Gerät geändert hat.

Desktopanwendungen

Desktop-Apps sollten änderungen an der Registrierung überwachen, um zu bestimmen, wann sich eine Farbprofilzuordnung mit RegNotifyChangeKeyValuegeändert hat. Eine App sollte sowohl für Benutzerprofilzuordnungsänderungen als auch für systemweite Änderungen registriert werden.

RegNotifyChangeKeyValue sollte mit einem von RegOpenKeyExbereitgestellten HKEY initialisiert werden. RegOpenKeyEx- sollte mithilfe der folgenden Registrierungsstrukturspeicherorte initialisiert werden:

   
Benutzerspezifische Profilzuordnungen HKEY_CURRENT_USER SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM\ProfileAssociations\Display\{4d36e96e-e325-11ce-bfc1-08002be10318}
Systemweite Profilzuordnungen HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e96e-e325-11ce-bfc1-08002be10318}

 

Wenn die App über eine Änderung eines Registrierungsschlüssels benachrichtigt wird, sollte zuerst abgefragt werden, ob benutzerspezifische oder systemweite Zuordnungen verwendet werden, indem WcsGetUsePerUserProfilesaufgerufen wird. Anschließend sollte WcsGetDefaultColorProfile mit dem rechten WCS_PROFILE_MANAGEMENT_SCOPE Wert aufgerufen werden, um das neue aktive Farbprofil für den Monitor abzurufen. Beachten Sie, dass nicht alle Registrierungsschlüsseländerungen einer tatsächlichen Änderung im aktuell aktiven Farbprofil entsprechen; Die App-Mush überprüft, ob das von WcsGetDefaultColorProfile zurückgegebene Profil tatsächlich geändert wurde.

Universelle Windows-Apps (UWP)

Universelle Windows-Apps haben keinen Zugriff auf die oben genannten Registrierungsschlüssel. Stattdessen sollten sie einen Handler für das DisplayInformation.ColorProfileChanged Ereignis registrieren. Dieses Ereignis wird ausgelöst, wenn sich das aktive Farbprofil für den Monitor, auf dem die Anwendung ausgeführt wird, geändert hat. ColorProfileChanged berücksichtigt, ob benutzerspezifische oder systemweite Profilzuordnungen verwendet werden; Diese Informationen werden von UWP-Apps abstrahiert.

Beim Reagieren auf das ColorProfileChanged-Ereignis sollte die App das derzeit aktive Profil mithilfe DisplayInformation.GetColorProfileAsync-abfragen.