Compartir a través de


Función OpenColorProfileW (icm.h)

Crea un identificador para un perfil de color especificado. A continuación, el identificador se puede usar en otras funciones de administración de perfiles.

Sintaxis

HPROFILE OpenColorProfileW(
  PPROFILE pProfile,
  DWORD    dwDesiredAccess,
  DWORD    dwShareMode,
  DWORD    dwCreationMode
);

Parámetros

pProfile

Puntero a una estructura de perfil de color que especifica el perfil. El puntero pProfile se puede liberar en cuanto se crea el identificador.

dwDesiredAccess

Especifica cómo obtener acceso al perfil especificado. Este parámetro debe tomar uno de los siguientes valores constantes.

Valor Significado
PROFILE_READ
Abre el perfil para el acceso de lectura.
PROFILE_READWRITE
Abre el perfil para el acceso de lectura y escritura. No tiene ningún efecto para los perfiles XML de WCS.

dwShareMode

Especifica cómo se debe compartir el perfil, si el perfil está contenido en un archivo. Un valor de cero impide que el perfil se comparta en absoluto. El parámetro puede contener una o ambas de las siguientes constantes (combinadas por suma o OR lógico).

Valor Significado
FILE_SHARE_READ
Se pueden realizar otras operaciones abiertas en el perfil para el acceso de lectura.
FILE_SHARE_WRITE
Se pueden realizar otras operaciones abiertas en el perfil para el acceso de escritura. No tiene ningún efecto para los perfiles XML de WCS.

dwCreationMode

Especifica qué acciones realizar en el perfil al abrirlo, si está incluido en un archivo. Este parámetro debe tomar uno de los siguientes valores constantes.

Valor Significado
CREATE_NEW
Crea un nuevo perfil. Se produce un error si el perfil ya existe.
CREATE_ALWAYS
Crea un nuevo perfil. Sobrescribe el perfil si existe.
OPEN_EXISTING
Abre el perfil. Se produce un error si no existe
OPEN_ALWAYS
Abre el perfil si existe. En el caso de los perfiles ICC, si el perfil no existe, crea el perfil. En el caso de los perfiles XML de WCS, si el perfil no existe, devuelve un error.
TRUNCATE_EXISTING
Abre el perfil y lo trunca a cero bytes y devuelve un perfil ICC en blanco. Se produce un error si el perfil no existe.

Valor devuelto

Si esta función se ejecuta correctamente, el valor devuelto es el identificador del perfil de color que se abre. En el caso de los perfiles ICC y WCS, la función proporciona un CAMP y GMMP basado en el camp predeterminado actual y GMMP en el registro.

Cuando OpenColorProfile encuentra un perfil ICC con un perfil WCS incrustado y, si el miembro dwType dentro de la estructura Profile no toma el valor DONT_USE_EMBEDDED_WCS_PROFILES, debe extraer y usar los perfiles WCS contenidos en este WcsProfilesTag. El HPROFILE devuelto sería un HPROFILE de WCS.

Si se produce un error en esta función, el valor devuelto es NULL. Para obtener información de error extendida, llame a GetLastError.

Comentarios

Si no se especifican los datos de perfil con un nombre de archivo, dwShareMode y dwCreationMode se omiten.

dwCreationMode marca CREATE_NEW, CREATE_ALWAYS y TRUNCATE_EXISTING, siempre devolverá HPROFIL ICC en blanco. Si hay otras marcas dwCreationMode , se llama a InternalOpenColorProfile (mediante las marcas proporcionadas por la API) para determinar si el perfil es ICC o WCS XML.

Dentro de la ruta de acceso del código ICC, se devuelve un HPROFILE icc utilizando las marcas de uso compartido, acceso y creación solicitadas, tal como se especifica en las tablas anteriores.

Dentro de la ruta de acceso WCS, se producirá un error en la marca dwCreationMode OPEN_ALWAYS si el perfil no existe, ya que los perfiles WCS no se pueden crear ni editar dentro de la arquitectura WCS (deben editarse fuera de él mediante MSXML6). Por la misma razón, las marcas dwShareMode FILE_SHARE_WRITE y dwDesiredAccess PROFILE_READWRITE se omiten dentro de la ruta de acceso wcS.

Cuando la función abra el perfil ICC, buscará un WcsProfilesTag y, si hay alguno, extraerá y usará los perfiles WCS originales que contiene. (Vea WcsCreateIccProfile).

Un HPROFILE con información de perfil de WCS se deriva de un DMP mediante la adquisición del CAMP predeterminado y gmMP predeterminado del registro. Un HPROFILE es una composición de un DMP, CAMP y GMMP.

Una vez creado el identificador del perfil de color, se puede eliminar cualquier información utilizada para crear ese identificador.

Use la función CloseColorProfile para cerrar un identificador de objeto devuelto por OpenColorProfile.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado icm.h
Library Mscms.lib
Archivo DLL Mscms.dll

Consulte también