다음을 통해 공유


OpenColorProfileW 함수(icm.h)

지정된 색 프로필에 대한 핸들을 만듭니다. 그런 다음 다른 프로필 관리 함수에서 핸들을 사용할 수 있습니다.

구문

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

매개 변수

pProfile

프로필을 지정하는 색 프로필 구조에 대한 포인터입니다. pProfile 포인터는 핸들을 만드는 즉시 해제할 수 있습니다.

dwDesiredAccess

지정된 프로필에 액세스하는 방법을 지정합니다. 이 매개 변수는 다음 상수 값 중 하나를 사용해야 합니다.

의미
PROFILE_READ
읽기 액세스를 위한 프로필을 엽니다.
PROFILE_READWRITE
읽기 및 쓰기 액세스 모두에 대한 프로필을 엽니다. WCS XML 프로필에는 영향을 주지 않습니다.

dwShareMode

프로필이 파일에 포함된 경우 프로필을 공유하는 방법을 지정합니다. 값이 0이면 프로필이 전혀 공유되지 않습니다. 매개 변수는 다음 상수 중 하나 또는 둘 다를 포함할 수 있습니다(더하기 또는 논리적 OR로 결합됨).

의미
FILE_SHARE_READ
읽기 액세스를 위해 프로필에서 다른 열린 작업을 수행할 수 있습니다.
FILE_SHARE_WRITE
쓰기 액세스를 위해 프로필에서 다른 열린 작업을 수행할 수 있습니다. WCS XML 프로필에는 영향을 주지 않습니다.

dwCreationMode

프로필이 파일에 포함된 경우 프로필을 여는 동안 수행할 작업을 지정합니다. 이 매개 변수는 다음 상수 값 중 하나를 사용해야 합니다.

의미
CREATE_NEW
새 프로필을 만듭니다. 프로필이 이미 있으면 실패합니다.
CREATE_ALWAYS
새 프로필을 만듭니다. 프로필이 있는 경우 덮어씁니다.
OPEN_EXISTING
프로필을 엽니다. 존재하지 않는 경우 실패
OPEN_ALWAYS
프로필이 있는 경우 해당 프로필을 엽니다. ICC 프로필의 경우 프로필이 없는 경우 프로필을 만듭니다. WCS XML 프로필의 경우 프로필이 없으면 오류를 반환합니다.
TRUNCATE_EXISTING
프로필을 열고 0바이트로 잘라 빈 ICC 프로필을 반환합니다. 프로필이 없으면 실패합니다.

반환 값

이 함수가 성공하면 반환 값은 열려 있는 색 프로필의 핸들입니다. ICC 및 WCS 프로필의 경우 레지스트리의 현재 기본 CAMP 및 GMMP를 기반으로 하는 함수에서 CAMP 및 GMMP를 제공합니다.

OpenColorProfile에서 포함된 WCS 프로필이 있는 ICC 프로필이 발견되고 프로필 구조 내의 dwType 멤버가 DONT_USE_EMBEDDED_WCS_PROFILES 값을 사용하지 않는 경우 이 WcsProfilesTag에 포함된 WCS 프로필을 추출하고 사용해야 합니다. 반환된 HPROFILE은 WCS HPROFILE입니다.

이 함수가 실패하면 반환 값은 NULL입니다. 확장된 오류 정보는 GetLastError를 호출합니다.

설명

파일 이름을 사용하여 프로필 데이터를 지정하지 않으면 dwShareModedwCreationMode 는 무시됩니다.

dwCreationMode 플래그 CREATE_NEW, CREATE_ALWAYS 및 TRUNCATE_EXISTING 항상 빈 ICC HPROFILE을 반환합니다. 다른 dwCreationMode 플래그가 있는 경우 InternalOpenColorProfile이 호출되어(API에서 제공하는 플래그 사용) 프로필이 ICC 또는 WCS XML인지 확인합니다.

ICC 코드 경로 내에서 ICC HPROFILE은 위의 표에 지정된 대로 요청된 공유, 액세스 및 생성 플래그를 사용하여 반환됩니다.

WCS 아키텍처 내에서 WCS 프로필을 만들거나 편집할 수 없으므로 프로필이 없으면 dwCreationMode 플래그 OPEN_ALWAYS 실패합니다(MSXML6을 사용하여 외부에서 편집해야 함). 같은 이유로 dwShareMode 플래그 FILE_SHARE_WRITE 및 dwDesiredAccess 플래그 PROFILE_READWRITE WCS 경로 내에서 무시됩니다.

함수가 ICC 프로필을 열면 WcsProfilesTag 를 찾고, 있는 경우 해당 프로필에 포함된 원래 WCS 프로필을 추출하고 사용합니다. ( WcsCreateIccProfile을 참조하세요.)

WCS 프로필 정보가 포함된 HPROFILE은 레지스트리에서 기본 CAMP 및 기본 GMMP를 획득하여 DMP에서 파생됩니다. HPROFILE은 DMP, CAMP 및 GMMP의 컴퍼지션입니다.

색 프로필에 대한 핸들이 만들어지면 해당 핸들을 만드는 데 사용되는 모든 정보를 삭제할 수 있습니다.

CloseColorProfile 함수를 사용하여 OpenColorProfile에서 반환된 개체 핸들을 닫습니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
머리글 icm.h
라이브러리 Mscms.lib
DLL Mscms.dll

참고 항목