3.3.2 - Операция Вставить (Paste)

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

Альтернативно, окно может использовать функцию GetPriorityClipboardFormat. Эта функция идентифицирует самый лучший доступный формат буфера обмена согласно заданному приоритету. Окно, которое распознает только один формат буфера обмена, может просто определить, является ли этот формат доступным, используя функцию IsClipboardFormatAvailable.

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


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Владимир Соковиков.