OpenColorProfileA, fonction (icm.h)
Crée un handle pour un profil de couleur spécifié. Le handle peut ensuite être utilisé dans d’autres fonctions de gestion des profils.
Syntaxe
HPROFILE OpenColorProfileA(
PPROFILE pProfile,
DWORD dwDesiredAccess,
DWORD dwShareMode,
DWORD dwCreationMode
);
Paramètres
pProfile
Pointeur vers une structure de profil de couleur spécifiant le profil. Le pointeur pProfile peut être libéré dès que le handle est créé.
dwDesiredAccess
Spécifie comment accéder au profil donné. Ce paramètre doit prendre l’une des valeurs constantes suivantes.
Valeur | Signification |
---|---|
|
Ouvre le profil pour l’accès en lecture. |
|
Ouvre le profil pour l’accès en lecture et en écriture. N’a aucun effet pour les profils XML WCS. |
dwShareMode
Spécifie comment le profil doit être partagé, si le profil est contenu dans un fichier. La valeur zéro empêche le partage du profil. Le paramètre peut contenir une ou les deux constantes suivantes (combinées par addition ou PAR LOGIQUE).
Valeur | Signification |
---|---|
|
D’autres opérations d’ouverture peuvent être effectuées sur le profil pour l’accès en lecture. |
|
D’autres opérations d’ouverture peuvent être effectuées sur le profil pour l’accès en écriture. N’a aucun effet pour les profils XML WCS. |
dwCreationMode
Spécifie les actions à effectuer sur le profil lors de son ouverture, s’il est contenu dans un fichier. Ce paramètre doit prendre l’une des valeurs constantes suivantes.
Valeur | Signification |
---|---|
|
Crée un profil. Échoue si le profil existe déjà. |
|
Crée un profil. Remplace le profil s’il existe. |
|
Ouvre le profil. Échoue s’il n’existe pas |
|
Ouvre le profil s’il existe. Pour les profils ICC, si le profil n’existe pas, crée le profil. Pour les profils XML WCS, si le profil n’existe pas, retourne une erreur. |
|
Ouvre le profil et le tronque à zéro octet, renvoyant un profil ICC vide. Échoue si le profil n’existe pas. |
Valeur retournée
Si cette fonction réussit, la valeur de retour est le handle du profil de couleur ouvert. Pour les profils ICC et WCS, un CAMP et un GMMP sont fournis par la fonction en fonction des valeurs CAMP et GMMP par défaut actuelles dans le registre.
Quand OpenColorProfile rencontre un profil ICC avec un profil WCS incorporé, et si le membre dwType au sein de la structure profile ne prend pas la valeur DONT_USE_EMBEDDED_WCS_PROFILES, il doit extraire et utiliser le ou les profils WCS contenus dans ce WcsProfilesTag. Le fichier HPROFILE retourné est un HPROFILE WCS.
Si cette fonction échoue, la valeur de retour est NULL. Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Notes
Si les données de profil ne sont pas spécifiées à l’aide d’un nom de fichier, dwShareMode et dwCreationMode sont ignorés.
Les indicateurs dwCreationMode CREATE_NEW, CREATE_ALWAYS et TRUNCATE_EXISTING retournent toujours des HPROFILEs ICC vides. Si d’autres indicateurs dwCreationMode sont présents, InternalOpenColorProfile est appelé (à l’aide des indicateurs fournis par l’API) pour déterminer si le profil est ICC ou WCS XML.
Dans le chemin de code ICC, un fichier HPROFILE ICC est retourné à l’aide des indicateurs de partage, d’accès et de création demandés, comme indiqué dans les tableaux ci-dessus.
Dans le chemin WCS, l’indicateur dwCreationMode OPEN_ALWAYS échoue si le profil n’existe pas, car les profils WCS ne peuvent pas être créés ou modifiés dans l’architecture WCS (ils doivent être modifiés en dehors de celui-ci, à l’aide de MSXML6). Pour la même raison, l’indicateur dwShareMode FILE_SHARE_WRITE et l’indicateur dwDesiredAccess PROFILE_READWRITE sont ignorés dans le chemin WCS.
Lorsque la fonction ouvre le profil ICC, elle recherche un WcsProfilesTag et, le cas échéant, elle extrait et utilise les profils WCS d’origine qu’il contient. (Voir WcsCreateIccProfile.)
Un fichier HPROFILE avec des informations de profil WCS est dérivé d’un DMP en acquérant le CAMP par défaut et le GMMP par défaut à partir du Registre. Un HPROFILE est une composition d’un DMP, CAMP et GMMP.
Une fois le handle du profil de couleur créé, toutes les informations utilisées pour créer ce handle peuvent être supprimées.
Utilisez la fonction CloseColorProfile pour fermer un handle d’objet retourné par OpenColorProfile.
Configuration requise
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
En-tête | icm.h |
Bibliothèque | Mscms.lib |
DLL | Mscms.dll |