Функция EnumClipboardFormats


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

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

Синтаксис

UINT EnumClipboardFormats(
    UINT format
);

Параметры

format

[in] Устанавливает формат буфера обмена, который распознается как доступный.

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

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

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

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

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

Замечания

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

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

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

Windows 95/98/Me: Microsoft® Layer for Unicode (MSLU) поддерживается EnumClipboardFormats, чтобы обеспечить поддержку синтетических форматов буфера обмена. За подробной информацией обратитесь к статье Синтезированные форматы буфера обмена. Чтобы использовать эту версию EnumClipboardFormats, Вы должны добавить некоторые файлы к вашему приложению, как изложено в описании Microsoft Layer for Unicode для системы Windows 95/98/Me.

Пример

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

Смотри также 

Обзор Буфер обмена, CountClipboardFormats, OpenClipboard, RegisterClipboardFormat

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

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Да версии 3.1 и выше

Windows Me

Да

Windows 98

Да

Windows 95

Да

Используемая библиотека

User32.lib

Заголовочный файл

 

- объявлено в

Winuser.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

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

Hosted by uCoz