Delen via


Profielbeheerfuncties

Profielbeheerfuncties

De volgende API-functies zijn handig in profielbeheer.

Functie Beschrijving
AssociateColorProfileWithDeviceW- Hiermee koppelt u een opgegeven kleurprofiel aan een opgegeven apparaat.
[CreateProfileFromLogColorSpaceW]((/windows/win32/api/icm/nf-icm-createprofilefromlogcolorspacew) Converteert een logische kleurruimte naar een apparaatprofiel.
DisassociateColorProfileFromDeviceW Hiermee ontkoppelt u een opgegeven kleurprofiel met een opgegeven apparaat op een opgegeven computer.
EnumColorProfilesW- Inventariseert alle profielen die voldoen aan de opgegeven opsommingscriteria.
GetColorDirectoryW- Hiermee wordt het pad van de Map Windows COLOR opgehaald op een opgegeven computer.
GetDeviceGammaRamp Hiermee haalt u de gamma-ramp op van directe kleurenweergaveborden.
GetStandardColorSpaceProfileW- Hiermee wordt het kleurprofiel opgehaald dat is geregistreerd voor de opgegeven standaardkleurruimte .
InstallColorProfileW- Hiermee wordt een bepaald profiel geïnstalleerd voor gebruik op een opgegeven computer. Het profiel wordt ook gekopieerd naar de map COLOR.
RegisterCMMW- Koppelt een opgegeven identificatiewaarde aan de opgegeven kleurenbeheermodule dynamic link library (CMM DLL). Wanneer deze id wordt weergegeven in een kleurenprofiel, kan Windows vervolgens de bijbehorende CMM vinden om een transformatie te maken.
SetDeviceGammaRamp Hiermee stelt u de gamma-ramp in op directe kleurenweergaveborden.
SetStandardColorSpaceProfileW- Registreert een opgegeven profiel voor een bepaalde standaard kleurruimte. Het profiel kan worden opgevraagd met GetStandardColorSpaceProfileW.
UninstallColorProfileW- Hiermee verwijdert u een opgegeven kleurenprofiel van een opgegeven computer. Gekoppelde bestanden worden optioneel verwijderd uit het systeem.
registratie ongedaan maken Hiermee wordt een opgegeven id-waarde losgekoppeld van een opgegeven kleurenbeheermodule dynamic-link library (CMM DLL).
WcsAssociateColorProfileWithDevice- Hiermee koppelt u een opgegeven WCS-kleurenprofiel aan een opgegeven apparaat.
WcsCreateIccProfile Converteert een WCS-profiel naar een ICC-profiel.
WcsDisassociateColorProfileFromDevice Hiermee ontkoppelt u een opgegeven WCS-kleurenprofiel met een opgegeven apparaat op een opgegeven computer.
WcsEnumColorProfiles- Opsomming van alle kleurprofielen die voldoen aan de opsommingscriteria in het opgegeven bereik voor profielbeheer.
WcsEnumColorProfilesSize Retourneert de grootte in bytes van de buffer die is vereist voor de functie WcsEnumColorProfiles om kleurprofielen op te sommen.
WcsGetDefaultColorProfile Hiermee haalt u het standaardkleurprofiel voor een apparaat of de standaardwaarde voor het apparaat op als het apparaat niet is opgegeven.
WcsGetDefaultColorProfileSize Retourneert de grootte, in bytes, van de standaardnaam van het kleurprofiel voor een apparaat, inclusief de NULL- afsluiter.
WcsGetDefaultRenderingIntent Hiermee wordt de standaardweergave-intentie opgehaald in het opgegeven bereik voor profielbeheer.
WcsGetUsePerUserProfiles Bepaalt of de gebruiker ervoor heeft gekozen om een lijst met koppelingsprofielen per gebruiker te gebruiken voor het opgegeven apparaat.
WcsOpenColorProfileW- Hiermee maakt u een ingang voor een opgegeven kleurprofiel.
WcsSetDefaultColorProfile Hiermee stelt u de standaardnaam van het opgegeven profieltype in het opgegeven profielbeheerbereik in.
WcsSetDefaultRenderingIntent Hiermee stelt u de standaardweergave-intentie in het opgegeven profielbeheerbereik in.
WcsSetUsePerUserProfiles Hiermee kan de gebruiker opgeven of een koppelingslijst per gebruikersprofiel moet worden gebruikt voor het opgegeven apparaat.

 

Functies voor profielverbruik

De API's voor profielverbruik zijn api's in ICM2 die ICC- of WCS XML-profielen, profielgrepen of renderingintenties als parameters gebruiken en een set nieuwe API's voor WCS-profielondersteuning voor toepassingskleurbeheercode.

 

Profielen en profielbeheerfuncties

De werkstroom voor profielbeheer is gebaseerd op bestaande ICM2-API's die worden uitgebreid om extra functionaliteit te bieden voor het reviseren van toepassingscode.

Profielen bevatten informatie die wordt gebruikt door algoritmen voor kleurverwerking om kleur tussen verschillende kleurruimten te vertalen. Profielbeheer biedt een manier om query's uit te voeren en op te geven welke profielen in verschillende fasen worden gebruikt door het kleurenverwerkingsmodel om de kleuruitvoer van verschillende randapparatuur met diverse kleurkenmerken te beheren.

Profielbeheer biedt de volgende set functies:

 

  1. Kleurprofielen installeren voor gebruik in het systeem.

 

  1. Een of meer geïnstalleerde kleurprofielen koppelen aan een bepaald apparaat.

 

  1. Het kiezen van een standaardkleurprofiel van een bepaald type onder de profielen die beschikbaar zijn voor gebruik in een bepaalde fase van de kleurverwerking. Dit kan zijn voor een apparaat tussen de profielen die eraan zijn gekoppeld, of tussen de profielen die in het systeem zijn geïnstalleerd en niet specifiek voor het apparaat.

 

  1. Kleurprofielen inventariseren die voldoen aan bepaalde criteria van de profielen die in het systeem zijn geïnstalleerd.

De bestandsnaamextensies van het WCS-profiel zijn '.cdmp' voor DMPs, '.camp' voor CAMP's en '.gmmp' voor GMMPs.

 

profielbeheer per gebruiker en het inschakelen van uitvoering in LUA-context

Het doel van het ontwerp dat in het huidige document wordt beschreven, is als volgt:

 

  1. Verouderde ICM2-implementatie biedt geen ondersteuning voor profielbeheer per gebruiker. Verschillende gebruikers kunnen geen eigen profielinstellingen hebben. In Vista kunnen gebruikers met de infrastructuur voor WCS-profielbeheer afzonderlijke profielinstellingen configureren voor de meeste functies.

 

  1. Alle verouderde ICM2-profielbeheer-API's wijzigen instellingen voor het hele systeem en vereisen beheerdersbevoegdheden. In Windows Vista worden alle gebruikers meestal uitgevoerd in LUA-instellingen (Least-Privileged User Account) en kunnen beheerders selectief bevoegdheden verhogen om toepassingen uit te voeren die instellingen voor het hele systeem wijzigen. In WCS-profielbeheer kunnen alle profielinstellingen per gebruiker worden geconfigureerd in LUA-context. Profielbeheertoepassingen kunnen worden uitgevoerd als LUA-instellingen, waardoor het gebruiksbereik wordt verhoogd en ervoor zorgt dat de beveiliging van het systeem niet wordt aangetast.

Profielbeheer in Vista biedt de volgende verbeteringen ten opzichte van verouderde ICM2-infrastructuur:

 

  1. Het maakt profielkoppeling mogelijk met apparaten, standaardprofielinstellingen en opsomming van profielen in zowel per gebruiker als systeembreed bereik.

 

  1. Het installeren van een profiel blijft systeembreed en vereist beheerdersbevoegdheden. Dit is consistent met de profielinstallatie tijdens de installatie van het apparaat, omdat de installatie van het apparaat systeembreed is en beheerdersbevoegdheden vereist.

 

Of apparaten vanuit LUA-context kunnen worden geïnstalleerd, is met name van toepassing op wat wordt ondersteund voor die klasse van het apparaat. In Vista is het bijvoorbeeld mogelijk om printerinstallatie vanuit LUA-context uit te voeren als de gebruiker rechten heeft gekregen om bestanden te kopiëren naar het stuurprogrammaarchief door een domeinbeheerder met behulp van stuurprogrammaarchiefbeleid. De infrastructuur voor het beheer van kleurenprofielen hoeft in dit verband niets speciaals te doen, omdat de installatie plaatsvindt in de spooler-context.

 

  1. Het wijzigen van profielinstellingen in het bereik per gebruiker kan worden uitgevoerd in LUA-context; systeembrede wijzigingen vereiste beheerdersbevoegdheden. Profielbeheerbewerkingen waarvoor leesconfiguratiegegevens nodig zijn, kunnen worden uitgevoerd in LUA-context voor zowel instellingen per gebruiker als voor het hele systeem.

Profielbeheerbereik geeft het bereik aan van de uitgevoerde bewerkingen; per gebruiker of systeembrede.

Voor elke bewerking wordt aangegeven of deze kan worden uitgevoerd vanuit de LUA-context. Als een bewerking niet kan worden uitgevoerd in lua-context, retourneert de bijbehorende profielbeheer-API een fout waarbij de toegang is geweigerd. Toepassingen die gebruikmaken van de API, zoals het Configuratiescherm van Color Management, kunnen de gebruiker in staat stellen om de beheercontext (met behulp van OTS of consent UI) te verhogen en vervolgens de API aan te roepen vanuit de verhoogde context, zodat de bewerking slaagt.

Operatie

Bereik voor profielbeheer

Voorwaarde vooraf

Na de voorwaarde

Uitvoerbaar bestand in LUA-context

${ROWSPAN2}$Install profiel${REMOVE}$

Systeembreed

Profiel gekopieerd, geïnstalleerd in het systeem en beschikbaar voor gebruik. Profiel kan worden opgesomd in het systeembrede en huidige gebruikersbereik voor alle gebruikers.

Tijdens de installatie van apparaatstuurprogramma's, waarop het installatiebeleid voor stuurprogramma's van toepassing is. Nee, anders.

Huidige gebruiker

Niet ondersteund

${ROWSPAN2}$Uninstall profiel${REMOVE}$

Systeembreed

Profiel is geïnstalleerd in het systeem

Profiel verwijderd uit het systeem en eventueel verwijderd uit het profielarchief. Profiel is niet meer beschikbaar voor gebruik en kan niet worden opgesomd in een bereik.

Nee

Huidige gebruiker

Niet ondersteund

${ROWSPAN2}$Associate profiel met apparaat${REMOVE}$

Systeembreed

Profiel is geïnstalleerd en is van het type ICC of CDMP

Het profiel is beschikbaar voor gebruik met het apparaat door alle gebruikers. Het is opsommenbaar, in het hele systeem en ook voor het bereik van huidige gebruikers voor alle gebruikers, zoals gekoppeld aan het apparaat.

Nee

Huidige gebruiker

Profiel is geïnstalleerd. Het maakt niet uit of het profiel al aan het apparaat in systeembrede omvang is gekoppeld en van het type ICC of CDMP is.

Profiel is beschikbaar voor gebruik met het apparaat door de huidige gebruiker. Het kan alleen worden opgesomd in het bereik van de huidige gebruiker (tenzij er ook een systeembrede koppeling is) als gekoppeld aan het apparaat.

Ja

${ROWSPAN2}$Disassociate profiel van apparaat${REMOVE}$

Systeembreed

Het profiel is gekoppeld aan het apparaat in het hele systeem en is van het type ICC of CDMP

Profiel is niet meer beschikbaar voor gebruik (met uitzondering van gebruikers die deze koppeling hebben in hun huidige gebruikersbereik). Het is niet op te sommen in systeembreed bereik. Het kan echter wel worden opgesomd in het bereik van de huidige gebruiker, voor een gebruiker die deze koppeling in het bereik heeft.

Nee

Huidige gebruiker

Het profiel is gekoppeld aan het apparaat in het huidige gebruikersbereik (ongeacht of het is gekoppeld aan het systeembrede bereik) en is van het type ICC of CDMP.

Profiel is niet meer beschikbaar voor gebruik of kan worden geïnventareerd als gekoppeld aan het apparaat, door de huidige gebruiker (tenzij het ook is gekoppeld aan het systeembrede bereik van het apparaat).

Ja

${ROWSPAN2}$Set profiel voor een type (DMP of ICC) als standaardwaarde voor een apparaat${REMOVE}$

Systeembreed

Profiel is van het type ICC of CDMP

Het profiel wordt standaard gebruikt voor het specifieke type met het apparaat, voor alle gebruikers, met uitzondering van gebruikers die deze instelling hebben overschreven in hun huidige gebruikersbereik. (Het profiel is geïnstalleerd en gekoppeld aan het apparaatsysteem, als dat nog niet het geval is.)

Nee

Huidige gebruiker

Profiel is van het type ICC of CDMP

Het profiel wordt standaard gebruikt voor het specifieke type met het apparaat in het geval van de huidige gebruiker, ongeacht de standaardinstelling voor het systeem. (Het profiel is geïnstalleerd en gekoppeld aan het apparaat voor de huidige gebruiker, als dat nog niet het geval is.)

Ja, als het profiel al is geïnstalleerd

${ROWSPAN2}$Set profiel voor een type (ICC, DMP, CAMP, GMMP) en subtypecombinatie als globale standaard${REMOVE}$

Systeembreed

Alleen ICC- en CDMP-profielen kunnen worden gekoppeld aan apparaten.

Het profiel wordt standaard gebruikt voor het specifieke type. Gebruikers kunnen deze instelling overschrijven in het bereik van de huidige gebruiker. (Het profiel is geïnstalleerd, als dat nog niet het geval is.)

Nee

Huidige gebruiker

Alleen ICC- en CDMP-profielen kunnen worden gekoppeld aan apparaten.

Het profiel wordt standaard gebruikt voor het specifieke type voor de huidige gebruiker. (Het profiel is geïnstalleerd, als dat nog niet het geval is.)

Ja, als het profiel al is geïnstalleerd.

${ROWSPAN2}$Erase de onderdrukking van de huidige gebruiker voor een bepaalde standaardprofielinstelling, zodat de systeemstandaard altijd wordt gebruikt (als terugval) zelfs voor het huidige gebruikersbereik.${REMOVE}$

Systeembreed

Niet van toepassing

Huidige gebruiker

Zelfs voor query's van huidige gebruikers op standaardprofielinstellingen worden systeembrede instellingen geretourneerd voor gebruik.

Ja

${ROWSPAN2}$Enumerate geïnstalleerde profielen die voldoen aan bepaalde criteria (zoals apparaatklasse, profielklasse, enzovoort)${REMOVE}$

Systeembreed

Alleen ICC- en CDMP-profielen kunnen worden gekoppeld aan en geïnventariseerd voor apparaten.

Profielen die zijn geïnstalleerd en voldoen aan de opgegeven criteria in het hele systeembereik, worden opgesomd.

Ja

Huidige gebruiker

Alleen ICC- en CDMP-profielen kunnen worden gekoppeld aan apparaten en dus worden geïnventariseerd voor apparaten.

Profielen die zijn geïnstalleerd en voldoen aan de opgegeven criteria in het hele systeembereik, worden opgesomd.

Ja

${ROWSPAN2}$Enumerate profielen die zijn gekoppeld aan een bepaald apparaat dat voldoet aan bepaalde criteria, zoals apparaatklasse en profielklasse${REMOVE}$

Systeembreed

Alleen ICC- en CDMP-profielen kunnen worden gekoppeld aan en geïnventariseerd voor apparaten.

Profielen die zijn gekoppeld aan het apparaat in het hele systeembereik en voldoen aan de opgegeven criteria in het hele systeembereik worden opgesomd.

Ja

Huidige gebruiker

Alleen ICC- en CDMP-profielen kunnen worden gekoppeld aan en geïnventariseerd voor apparaten.

Profielen die beschikbaar zijn als gekoppeld aan het apparaat in het huidige gebruikersbereik, waaronder de systeembrede koppelingen en voldoen aan de opgegeven criteria in het huidige gebruikersbereik, worden opgesomd.

Ja

 

De geldige kleurprofieltypen worden geleverd door de opsomming COLORPROFILETYPE.

De geldige subtypen van het kleurprofiel worden geleverd door de opsomming COLORPROFILESUBTYPE.

De geldige profieltype-/subtypecombinaties worden weergegeven in de volgende tabel.

COLORPROFILETYPE

Geldig COLORPROFILESUBTYPE

Notities

Standaardwaarde apparaat

Algemene standaardwaarde

Bedoeld gebruik

Bedoeld gebruik

CPT_ICC

CPST_NONE

Standaard ICC-profiel ophalen/instellen dat is gekoppeld aan een apparaat

CPST_RGBWorkingSpace of CPST_CustomWorkingSpace

Icc-profiel ophalen/instellen als globaal RGB- of aangepaste werkruimteprofiel. Zie Opmerking.

De COLORPROFILETYPE CPT_ICC en CPT_DMP sluiten elkaar wederzijds uit. Het standaardkleurprofiel dat u instelt voor een bepaalde werkruimte (RGB of Aangepast) kan een ICC-profiel of een DMP-profiel zijn, maar niet beide.

CPT_DMP

CPST_NONE

Standaard-DMP-profiel ophalen/instellen dat is gekoppeld aan een apparaat

CPST_RGBWorkingSpace of CPST_CustomWorkingSpace

DMP-profiel ophalen/instellen als globaal RGB- of aangepaste werkruimteprofiel. Zie Opmerking.

De COLORPROFILETYPE CPT_ICC en CPT_DMP sluiten elkaar wederzijds uit. Het standaardkleurprofiel dat u instelt voor een bepaalde werkruimte (RGB of Aangepast) kan een ICC-profiel of een DMP-profiel zijn, maar niet beide.

 

Notitie

Wanneer WcsSetDefaultColorProfile wordt aangeroepen om een DMP-profiel in te stellen als het standaardprofiel voor de RGB-werkruimte of een aangepaste werkruimte, is alleen een DMP-profiel van het type RGBVirtualDevice, LCD of CRT geldig.

 

Wanneer WcsSetDefaultColorProfile wordt aangeroepen om een ICC-profiel in te stellen als het standaardprofiel voor de RGB-werkruimte of een aangepaste werkruimte, is alleen een ICC-profiel waarvan de klasse 'afstand' of 'disp' is en waarvan de kleurruimte 'RGB' geldig is.

 

De architectuur is ontworpen volgens de vereisten van de bewerkingen, zoals vermeld in de bovenstaande opsommingen en tabellen.

Openbare API-laag voor profielbeheer

Omdat het bereik voor profielbeheer niet wordt ondersteund door verouderde ICM2-API's, is een nieuwe set WCS-profielbeheer-API's vereist waarmee het bereik voor profielbeheer als systeembrede of huidige gebruiker wordt gedefinieerd. ? Verouderde ICM2-API's blijven ondersteund voor achterwaartse compatibiliteit en werken aan het bereik voor profielbeheer dat impliciet is voor de aanroep. o ICM2-API's die werken op het huidige gebruikersbereik? Dit is voor bewerkingen die worden ondersteund voor zowel systeembreed als huidig gebruikersbereik in WCS-profielbeheer. Verouderde ICM2-API's roepen nieuwe WCS-API's aan met profielbeheerbereik als huidige gebruiker. Dit is logisch vanuit het perspectief van de gebruiker, omdat dit instellingen per gebruiker mogelijk maakt vanuit verouderde toepassingen en ook de meeste bewerkingen uitvoert in LUA-context. o ICM2-API's die werken op systeembrede scope? Dit is bedoeld voor bewerkingen (installatieprofielen en verwijderingsprofielen) die alleen ondersteuning bieden voor het hele systeem. Er worden geen nieuwe WCS-profielbeheer-API's gemaakt en bestaande API's kunnen worden gewijzigd.

De onderliggende implementaties van de profielbeheerbewerkingen werken aan de volgende entiteiten voor configuratiegegevens om de context voor kleurverwerkingsalgoritmen te maken om functies voor kleurbeheer te bieden. Dit zijn apparaatspecifieke of globale (apparaatonafhankelijke) instellingen. o Apparaatspecifieke configuratiegegevens: ? Lijst met profielen die zijn gekoppeld aan een bepaald apparaat. ? Standaardprofiel voor verschillende profieltypen die zijn gekoppeld aan een apparaat. ? Overeenkomende modus van profielen die worden gebruikt voor opsomming. o Globale configuratiegegevens: ? Lijst met profielen die in het systeem zijn geïnstalleerd. ? Globaal standaardprofiel voor verschillende profieltypen. ? De onderliggende implementaties van configuratiegegevensopslag nemen het opslagbereik voor configuratiegegevens (apparaatonafhankelijk of apparaatspecifiek) in beslag. Dit kan systeembrede of huidige gebruiker zijn. Dit verschilt van het bereik van profielbeheer. Een bewerking met het beheerbereik voor huidig gebruikersprofiel kan leiden tot een leesbewerking van een opslagbereik voor het hele systeem als de instelling voor de huidige gebruiker voor die bewerking niet aanwezig is. ? De ICM2/WCS API-laag aanroepen in deze opslaglaag voor het ophalen en instellen van gegevens met het juiste opslagbereik. De opslaglaag is transparant voor het profielbeheerbereik. De logica voor het combineren van gegevens uit huidige opslagbereiken en opslagbereiken voor het hele systeem om een configuratie te maken of bij te werken op basis van het bereik voor profielbeheer dat is opgegeven door de API-aanroeper. Deze logica is aanwezig in de ICM2/WCS API-laag.

Apparaatspecifieke opslaglaag

De opslag voor verschillende klassen apparaten, zoals afdrukken, vastleggen of weergeven, kan van elkaar verschillen. Configuratiegegevens voor een afdrukapparaat moeten bijvoorbeeld worden opgeslagen met behulp van standaardafdruk-API's, zoals SetPrinterDataEx en GetPrinterDataEx, zodat de profielen kunnen worden gekopieerd en instellingen worden overgebracht naar een clientcomputer tijdens een punt- en afdrukverbinding. ? Met deze laag exporteert u functionaliteit om de opslag te openen, gegevens op te halen, gegevens in te stellen en het archief te sluiten met behulp van gemeenschappelijke vooraf gedefinieerde interfaces, zodat de opslaglaag voor profielbeheer deze kan aanroepen terwijl deze transparant zijn voor de manier waarop de gegevens voor dat apparaat worden opgeslagen.

In het volgende diagram ziet u deze architectuur.

Openbare API-laag voor profielbeheer

${ROWSPAN2}$Legacy ICM2-API's voor bewerkingen die alleen ondersteuning bieden voor het beheerbereik voor het hele systeem in Vista (installeren, verwijderen en kleurenmap ophalen). Ze roepen de configuratieopslaglaag aan met het juiste opslagbereik.${REMOVE}$

Verouderde ICM2-API voor bewerkingen die ondersteuning bieden voor zowel het beheerbereik voor systeembrede als het huidige gebruikersprofiel in Vista (alle bewerkingen anders dan installeren, verwijderen en kleurmap ophalen). Ze werken impliciet aan het huidige gebruikersbereik en roepen nieuwe WCS-API aan met profielbeheerbereik als huidige gebruiker.

Nieuwe WCS-API met ondersteuning voor beheerbereik voor systeembrede en huidige gebruikersprofielen. Ze roepen de configuratieopslaglaag aan met het juiste opslagbereik.

 

Opslaglaag voor profielbeheer

Apparaatonafhankelijke globale configuratieroutines

Apparaatspecifieke configuratieroutines

${ROWSPAN3}$Profile installatie en apparaatonafhankelijk standaardprofielinstellingenbeheer, ondersteund in het opslagbereik voor de hele systeembrede en huidige gebruiker.${REMOVE}$

Apparaatkoppeling en apparaatspecifiek standaardprofielinstellingenbeheer, ondersteund in het opslagbereik voor de hele systeembrede en huidige gebruiker.

Device-Specific Opslaglaag

Specifieke opslag afdrukken

Specifieke opslag weergeven

Specifieke opslag vastleggen

 

Verouderde ICM2-API's voor bewerkingen die alleen een systeembreed profielbeheerbereik in Vista ondersteunen, hebben geen wijzigingen in gedrag. Installatie- en verwijderingsbewerkingen vallen in deze categorie.

Verouderde ICM2-API's voor bewerkingen die ondersteuning bieden voor het beheerbereik voor systeembrede en huidige gebruikersprofielen, hebben hun gedrag gewijzigd om query's uit te voeren en instellingen voor huidige gebruikers te configureren. Alle andere bewerkingen dan installeren en verwijderen vallen in deze categorie.