Функция RegisterDragDrop (ole2.h)
Регистрирует указанное окно в качестве целевого объекта операции перетаскивания OLE и задает экземпляр IDropTarget, используемый для операций удаления.
Синтаксис
HRESULT RegisterDragDrop(
[in] HWND hwnd,
[in] LPDROPTARGET pDropTarget
);
Параметры
[in] hwnd
Дескриптор окна, который может быть целевым объектом для операции перетаскивания OLE.
[in] pDropTarget
Указатель на интерфейс IDropTarget на объект, который должен быть целью операции перетаскивания в указанном окне. Этот интерфейс используется для обмена сведениями о перетаскивании OLE для этого окна.
Возвращаемое значение
Эта функция возвращает S_OK при успешном выполнении. К другим возможным значениям относятся следующие.
Возвращаемый код | Описание |
---|---|
|
Недопустимый дескриптор, возвращенный в параметре hwnd. |
|
Указанное окно уже зарегистрировано в качестве целевого объекта удаления. |
|
Недостаточно памяти для операции. |
Замечания
Если приложение может принимать удаленные объекты во время операций перетаскивания OLE, необходимо вызвать функцию RegisterDragDrop. Это делается всякий раз, когда одно из окон приложений доступно в качестве потенциального целевого объекта удаления; То есть, когда окно не отображается на экране.
Поток приложения, вызывающий функцию
Функция RegisterDragDrop регистрирует только одно окно за раз, поэтому необходимо вызвать его для каждого окна приложения, способного принимать удаленные объекты.
Когда мышь передает неисправные части целевого окна во время операции перетаскивания OLE, функция DoDragDrop вызывает указанный метод IDropTarget::D ragOver для текущего окна. Когда операция удаления на самом деле происходит в заданном окне, функция DoDragDrop вызывает IDropTarget::D rop.
Функция RegisterDragDrop также вызывает метод IUnknown::AddRef указателя IDropTar get.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | ole2.h |
библиотеки |
Ole32.lib |
DLL | Ole32.dll |