Функция EnumColorProfiles


Функция EnumColorProfiles перечисляет все профили, удовлетворяющие данным критериям перечисления.

Синтаксис

BOOL WINAPI EnumColorProfiles(
  PCTSTR pMachineName,
  PENUMTYPE pEnumRecord,
  PBYTE pBuffer,
  PDWORD pdwSize,
  PDWORD pnProfiles
);

Параметры

pMachineName

Зарезервирован; должен быть НУЛЬ (NULL). Этот параметр предназначается, чтобы указать на имя компьютера, на котором перечисляются профили. Пустой (NULL) указатель указывает локальный компьютер.

pEnumRecord

Указатель на структуру, определяющую критерии перечисления.

pBuffer

Указатель на буфер в который перечисляются профили. Строка MULTI_SZ имени профиля, удовлетворяющая критерии, определенные в параметре *pEnumRecord, должна быть расположена в этом буфере.

pdwSize

Указатель на переменную, содержащую размер буфера, указанный при помощи параметра pBuffer. По возвращению, *pdwSize содержит размер фактически используемого или необходимого буфера.

pnProfiles

Указатель на переменную, которая будет содержать, по возвращению, число имен профиля, фактически скопированных в буфер.

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

Если эта функция завершается успешно, возвращаемое значение - ИСТИНА (TRUE).

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

Замечания

Функция EnumColorProfiles может использоваться, чтобы найти профиль по умолчанию для устройства, определяя имя устройства и класс профиля в параметре pEnumRecord. Однако, другой способ найти профиль цвета по умолчанию устройства состоит в том, чтобы создать контекст устройства (DC) для устройства и затем вызвать функцию GetICMProfile.

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

С принтерами обычно связано несколько профилей, опирающихся на тип бумаги и чернил. Профиля по умолчанию нет. GDI выбирает один из самых лучших связанных  профилей, когда приложение создает контекст устройства (DC).

У сканеров также нет профиля по умолчанию. Однако, со сканером можно нестандартно связать более чем один профиль..

Если член dwFields структуры типа ENUMTYPE, который указан при помощи параметра pEnumRecord, установленного в ET_DEVICENAME, то эта функция перечислит все профили цвета, связанные со всеми типами устройств, присоединенных к компьютеру пользователя. Если член структуры dwFields указывает при помощи параметра pEnumRecord, устанавленного в ET_DEVICENAME | ET_DEVICECLASS, и класс устройства, определенный в члене структуры dwDeviceClass, то эта функция перечислит только профили, связанные с классом указанного устройства. Если член структуры dwFields установлен только в ET_DEVICECLASS, то функция EnumColorProfiles перечислит все профили, которые могут связаться с этим типом устройства.

Ваше приложение может использовать функцию EnumColorProfiles, чтобы получить размер буфера в который, перечисляются профили. Оно должно вызвать функцию EnumColorProfiles с параметром pBuffer установленным в НУЛЬ (NULL). Когда функцией возвращается значение, параметр pdwSize будет содержать необходимый размер буфера, в байтах. Ваша программа может использовать эту информацию, чтобы назначить величину буфера перечисления. Она может затем вызвать EnumColorProfiles снова с параметром pBuffer с установленным адресом буфера.

Смотри также

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

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

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

 

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

Hosted by uCoz