Функция EnumClipboardFormats (winuser.h)

Перечисляет форматы данных, доступные в буфере обмена.

Форматы данных буфера обмена хранятся в упорядоченном списке. Чтобы выполнить перечисление форматов данных буфера обмена, необходимо выполнить ряд вызовов функции EnumClipboardFormats . Для каждого вызова параметр format указывает доступный формат буфера обмена, а функция возвращает следующий доступный формат буфера обмена.

Синтаксис

UINT EnumClipboardFormats(
  [in] UINT format
);

Параметры

[in] format

Тип: UINT

Формат буфера обмена, который известен как доступный.

Чтобы начать перечисление форматов буфера обмена, присвойте формату нулевое значение. Если формат равен нулю, функция получает первый доступный формат буфера обмена. Для последующих вызовов во время перечисления задайте для параметра format результат предыдущего вызова EnumClipboardFormats .

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

Тип: UINT

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

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

Если больше нет форматов буфера обмена для перечисления, возвращаемое значение равно нулю. В этом случае функция GetLastError возвращает значение ERROR_SUCCESS. Это позволяет различать сбой функции и конец перечисления.

Комментарии

Перед перечислением его форматов необходимо открыть буфер обмена. Используйте функцию OpenClipboard , чтобы открыть буфер обмена. Функция EnumClipboardFormats завершается сбоем, если буфер обмена не открыт.

Функция EnumClipboardFormats перечисляет форматы в порядке их размещения в буфере обмена. Если вы копируете данные в буфер обмена, добавьте объекты буфера обмена в порядке от наиболее описательного формата буфера обмена до наименее описательного формата буфера обмена. При вставке данных из буфера обмена получите первый формат буфера обмена, который можно обработать. Это будет наиболее описательный формат буфера обмена, который можно обрабатывать.

Система обеспечивает автоматическое преобразование типов для определенных форматов буфера обмена. В случае такого формата эта функция перечисляет указанный формат, а затем перечисляет форматы, в которые его можно преобразовать. Дополнительные сведения см. в разделах Стандартные форматы буфера обмена и Синтезированные форматы буфера обмена.

Примеры

Пример см. в разделе Пример средства просмотра буфера обмена.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winuser.h (включая Windows.h)
Библиотека User32.lib
DLL User32.dll
Набор API ext-ms-win-ntuser-misc-l1-5-1 (представлено в Windows 10 версии 10.0.14393)

См. также раздел

Буфер обмена

Основные понятия

CountClipboardFormats

OpenClipboard

Справочные материалы

RegisterClipboardFormat