Функция GetICMProfile


Функция GetICMProfile извлекает имя файла текущего профиля выводимого цвета для указанного контекста устройства.

Синтаксис

BOOL WINAPI GetICMProfile(
  HDC hDC,
  LPDWORD lpcbName,
  LPTSTR lpszFilename
);

Параметры

hDC

Определяет контекст устройства из которого извлекается профиль цвета.

lpcbName

Указатель на двойное слово (DWORD), которое содержит размер буфера, указанный при помощи параметра lpszFilename. Для версии ANSI этой функции, размер находится в байтах. Для версии Unicode, размер находится в WCHARs. Если эта функция завершается успешно, по возвращению, этот параметр содержит размер буфера, фактически используемого. Однако, если буфер не является достаточно большим, эта функция возвращает ЛОЖЬ (FALSE). В этом случае, функцией GetLastError () возвращается ERROR_INSUFFICIENT_BUFFER, а двойное слово (DWORD) указанное при помощи этого параметра, содержит размер, необходимый для буфера lpszFilename.

lpszFilename

Указывает на буфер, который получает имя пути профиля.

Возвращаемые значения

Если эта функция завершается успешно, возвращаемое значение - ИСТИНА (TRUE). Она также возвращает значение ИСТИНА (TRUE), если параметр lpszFilename - НУЛЬ (NULL), а размер, требуемый для буфера копируется в lpcbName.

Если эта функция завершается ошибкой, возвращаемое значение - ЛОЖЬ (FALSE).

Замечания

Функция GetICMProfile получает имя файла текущего выходного профиля независимо от того, действительно ли управление цветом допускается для контекста устройства.

Учитывая контекст устройства, функция GetICMProfile выведет, через параметр lpszFilename, имя пути файла, содержащего в себе профиль цвета, в настоящее время использующийся контекстом устройства. Она также выведет, через параметр lpcbName, длину строки, содержащую имя пути.

Возможно, что имени профиля, возвращенного функцией GetICMProfile не будет в списке профилей, возвращенных функцией EnumICMProfiles. Функция EnumICMProfiles возвращает значения всех профилей цветового пространства, которые связаны с контекстом устройства (DC) и набор параметров настройки, которые из этого контекста устройства. Если функция SetICMProfile используется, чтобы установить текущий профиль, то она может связаться с контекстом устройства (DC), который не соответствует его параметрам настройки. Например, функция SetICMProfile может использоваться, чтобы связать не зависящий от устройства профиль sRGB с контекстом устройства (DC). Этот профиль используется как текущий профиль технологии ICM для этого контекста устройства (DC) и вызовы функции GetICMProfile возвратят имя его файла. Однако, профиль не будет появляться в списке профилей, который возвращается функцией EnumICMProfiles.

Если эта функция вызвана перед любыми вызовами функции SetICMProfile, то она может использоваться, чтобы получить профиль по умолчанию для контекста устройства.

Windows 95/98/Me: GetICMProfileW поддерживается Microsoft Layer for Unicode. Чтобы использовать это, Вы должны добавить определенные файлы к вашему приложению, как выделено в Microsoft Layer for Unicode для системы Windows 95/98/Me.

Смотри также

Обзор Основные понятия управления цветом, Функции, используемые ICM,  EnumICMProfiles, SetICMProfile

Размещение и совместимость GetICMProfile

К Windows XP Да 
л Windows 2000 Professional Да
и Windows NT Workstation Нет
е Windows Me Да
н Windows 98 Да
т Windows 95 Да
 
С Windows Server 2003 Да
е Windows 2000 Server Да
р Windows NT Server Нет
в    
е    
р    
Используемая библиотека Gdi32.lib
Используемая DLL -
 Заголовочный файл  
- объявлено в Wingdi.h
 - включено в -
 Unicode Реализуется  как версии Unicode и ANSI для Windows 2000/XP. Также поддерживает Microsoft Layer for Unicode.
 Замечания по платформе Не имеется

 

Назад в оглавление
На главную страницу
В оглавление справки

Hosted by uCoz