RegisterDragDrop  1MLSYGF

Registers the specified window as one that can be the target of an OLE drag-and-drop operation and specifies the IDropTarget132VOW2 instance to use for drop operations.

WINOLEAPI RegisterDragDrop(

    HWND hwnd,

//Handle to a window that can accept drops

    IDropTarget * pDropTarget

//Pointer to object that is to be target of drop

   );

 

 

Parameters

hwnd

[in] Handle to a window that can be a target for an OLE drag-and-drop operation.

pDropTarget

[in] Pointer to the IDropTarget132VOW2 interface on the object that is to be the target of a drag-and-drop operation in a specified window. This interface is used to communicate OLE drag-and-drop information for that window.

 

Return Values

This function supports the standard return value E_OUTOFMEMORY, as well as the following:

S_OK

The application was registered successfully.

DRAGDROP_E_INVALIDHWND

Invalid handle returned in the hwnd parameter.

DRAGDROP_E_ALREADYREGISTERED

The specified window has already been registered as a drop target.

 

Remarks

If your application can accept dropped objects during OLE drag-and-drop operations, you must call the RegisterDragDrop function. Do this whenever one of your application windows is available as a potential drop target, i.e., when the window appears unobscured on the screen.

The RegisterDragDrop function only registers one window at a time, so you must call it for each application window capable of accepting dropped objects.

As the mouse passes over unobscured portions of the target window during an OLE drag-and-drop operation, the DoDragDrop3YY1_Q5 function calls the specified IDropTarget::DragOverULEBUJ method for the current window. When a drop operation actually occurs in a given window, the DoDragDrop function calls IDropTarget::Drop1_PY6.O.

The RegisterDragDrop function also calls the IUnknown::AddRef method on the IDropTarget pointer.

See Also

RevokeDragDrop