Funzione EnumColorProfilesA (icm.h)
Enumera tutti i profili che soddisfano i criteri di enumerazione specificati.
Sintassi
BOOL EnumColorProfilesA(
PCSTR pMachineName,
PENUMTYPEA pEnumRecord,
PBYTE pEnumerationBuffer,
PDWORD pdwSizeOfEnumerationBuffer,
PDWORD pnProfiles
);
Parametri
pMachineName
Riservato. Deve essere NULL. Questo parametro punta al nome del computer in cui enumerare i profili. Un puntatore NULL indica il computer locale.
pEnumRecord
Puntatore a una struttura che specifica i criteri di enumerazione.
pEnumerationBuffer
Puntatore a un buffer in cui devono essere enumerati i profili. In questo buffer verrà inserita una MULTI_SZ stringa di nomi di profilo che soddisfano i criteri specificati in *pEnumRecord .
pdwSizeOfEnumerationBuffer
Puntatore a una variabile contenente le dimensioni del buffer a cui punta pBuffer. In caso di restituzione, *pdwSize contiene le dimensioni del buffer effettivamente usate o necessarie.
pnProfiles
Puntatore a una variabile che conterrà, in caso di restituzione, il numero di nomi di profilo effettivamente copiati nel buffer.
Valore restituito
Se questa funzione ha esito positivo, il valore restituito è TRUE.
Se questa funzione ha esito negativo, il valore restituito è FALSE. Per informazioni sugli errori estesi, chiamare GetLastError.
Commenti
Diversi profili sono in genere associati alle stampanti, in base ai tipi di carta e inchiostro. Esiste un profilo predefinito per ogni dispositivo. Per i profili INTERNATIONAL Color Consortium (ICC), GDI seleziona quello migliore dai profili associati a CPI quando l'applicazione crea un contesto di dispositivo (DC).
Non tentare di usare EnumColorProfiles per determinare il profilo predefinito per un dispositivo. Creare invece un contesto di dispositivo per il dispositivo e quindi richiamare la funzione GetICMProfile . In Windows Vista e Windows 7 la funzione WcsGetDefaultColorProfile può essere usata anche per determinare il profilo colore predefinito di un dispositivo.
Se il membro dwFields della struttura di tipo ENUMTYPE a cui punta il parametro pEnumRecord è impostato su ET_DEVICENAME, questa funzione enumera tutti i profili di colore associati a tutti i tipi di dispositivi collegati al computer dell'utente, indipendentemente dalla classe del dispositivo. Se il membro dwFields della struttura a cui punta il parametro pEnumRecord è impostato su ET_DEVICENAME o ET_DEVICECLASS e nel membro dwDeviceClass della struttura viene specificata una classe device, questa funzione enumera solo i profili associati alla classe di dispositivo specificata. Se il membro dwFields è impostato solo su ET_DEVICECLASS, la funzione EnumColorProfiles enumera tutti i profili che possono essere associati a quel tipo di dispositivo.
Ogni volta che EnumColorProfiles esamina i profili associati a un dispositivo specifico, i risultati dipendono dal fatto che l'utente abbia scelto di usare l'elenco di profili a livello di sistema associato a tale dispositivo o il proprio elenco ("per utente"). Chiamando WcsSetUsePerUserProfiles con il relativo parametro usePerUserProfiles impostato su TRUE , le chiamate future a EnumColorProfiles esaminano solo l'elenco di associazioni di profili per utente corrente per il dispositivo specificato. Chiamando WcsSetUsePerUserProfiles con il relativo parametro usePerUserProfiles impostato su FALSE , le chiamate future a EnumColorProfiles esaminano l'elenco a livello di sistema delle associazioni di profilo per il dispositivo specificato. Se WcsSetUsePerUserProfiles non è mai stato chiamato per l'utente corrente, EnumColorProfiles esamina l'elenco a livello di sistema.
L'applicazione può usare EnumColorProfiles per ottenere le dimensioni del buffer in cui vengono enumerati i profili. Deve chiamare la funzione EnumColorProfiles con il parametro pBuffer impostato su NULL. Al termine della funzione, il parametro pdwSize conterrà le dimensioni del buffer necessarie in byte. Il programma può usare tali informazioni per allocare il buffer di enumerazione. Può quindi richiamare nuovamente EnumColorProfiles con il parametro pBuffer impostato sull'indirizzo del buffer.
Questa funzione fornirà le informazioni per la conversione delle informazioni DMP specifiche di WCS nel record EnumType legacy in abilitare l'enumerazione coerente del profilo. Le impostazioni predefinite saranno uguali a CPI se queste informazioni non sono presenti.
Supporto per utente/LUA
L'enumerazione è specifica dell'utente corrente. Vengono considerate sia le associazioni dei dispositivi utente a livello di sistema che le associazioni correnti dei dispositivi. Per la configurazione predefinita del profilo, le impostazioni utente correnti sostituiscono quelle a livello di sistema.
Requisiti
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Intestazione | icm.h |