Поделиться через


Метод IOleObject::GetClipboardData (oleidl.h)

Извлекает объект данных, содержащий текущее содержимое внедренного объекта, для которого вызывается этот метод. Используя указатель на этот объект данных, можно создать новый внедренный объект с теми же данными, что и исходный объект.

Синтаксис

HRESULT GetClipboardData(
  [in]  DWORD       dwReserved,
  [out] IDataObject **ppDataObject
);

Параметры

[in] dwReserved

Этот параметр зарезервирован и должен иметь нулевое значение.

[out] ppDataObject

Адрес переменной указателя IDataObject , которая получает указатель интерфейса на объект данных. При возникновении ошибки параметру ppDataObject необходимо задать значение NULL. Каждый раз, когда объект получает вызов IOleObject::GetClipboardData, он должен увеличивать количество ссылок в ppDataObject. Вызывающий объект отвечает за вызов Release после завершения работы с ppDataObject.

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

Этот метод возвращает значение S_OK при успешном завершении. Другие возможные возвращаемые значения включают следующее.

Код возврата Описание
E_NOTIMPL

GetClipboardData не поддерживается.

OLE_E_NOTRUNNING
Объект не выполняется.

Комментарии

Метод IOleObject::GetClipboardData можно использовать для преобразования связанного объекта во внедренный объект. В этом случае контейнерное приложение вызовет IOleObject::GetClipboardData , а затем передает полученные данные в OleCreateFromData. Этот метод возвращает указатель на объект данных, идентичный тому, что было бы передано в буфер обмена стандартной операцией копирования.

Примечания к вызывающим абонентам

Если требуется стабильное snapshot текущего содержимого внедренного объекта, вызовите IOleObject::GetClipboardData. В случае изменения данных потребуется снова вызвать функцию для обновленного snapshot. Если вы хотите, чтобы вызывающий объект был проинформирован об изменениях, происходящих с данными, вызовите QueryInterface, а затем вызовите IDataObject::D Advise.

Примечания для разработчиков

При реализации этой функции необходимо вернуть указатель IDataObject для объекта, данные которого не изменятся.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header oleidl.h

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

Idataobject

IOleObject

IOleObject::InitFromData

OleCreateFromData