The following table describes the messages that are sent to each window whose boundaries are crossed as the user drags the object around the screen:
┌────────────────────┬────────────────────────────────────────┐ │Message Name │Description │ ├────────────────────┼────────────────────────────────────────┤ │DM_DRAGOVER │Sent to the window under the pointer as │ │ │the pointer is dragged across it. A │ │ │single DM_DRAGOVER message is sent each │ │ │time the pointer moves and each time a │ │ │key is pressed or released, and it │ │ │contains a pointer to the DRAGINFO data │ │ │structure. The target can access this │ │ │data structure with DrgAccessDraginfo. │ ├────────────────────┼────────────────────────────────────────┤ │DM_DRAGLEAVE │Sent whenever the DM_DRAGOVER message │ │ │has been sent to a window, and the │ │ │pointer is moved outside the bounds of │ │ │that window. If the target or an object │ │ │in the window had been emphasized as a │ │ │target, it should be de-emphasized. │ ├────────────────────┼────────────────────────────────────────┤ │DM_DROP │Sent to the target to provide it with │ │ │the information necessary to establish a│ │ │conversation for data exchange with the │ │ │source. The target should immediately │ │ │remove any target emphasis. The data │ │ │transfers must not be done before │ │ │responding to the DM_DROP message. │ ├────────────────────┼────────────────────────────────────────┤ │DM_DROPHELP │Posted to a target to indicate that the │ │ │user requested help for the drag │ │ │operation while over that target. │ └────────────────────┴────────────────────────────────────────┘