Función RegisterDragDrop (ole2.h)
Registra la ventana especificada como una que puede ser el destino de una operación de arrastrar y colocar OLE y especifica la instancia de IDropTarget que se va a usar para las operaciones de colocación.
Sintaxis
HRESULT RegisterDragDrop(
[in] HWND hwnd,
[in] LPDROPTARGET pDropTarget
);
Parámetros
[in] hwnd
Identificador de una ventana que puede ser un destino para una operación de arrastrar y colocar OLE.
[in] pDropTarget
Puntero a la interfaz IDropTarget en el objeto que va a ser el destino de una operación de arrastrar y colocar en una ventana especificada. Esta interfaz se usa para comunicar información de arrastrar y colocar OLE para esa ventana.
Valor devuelto
Esta función devuelve S_OK si se ejecuta correctamente. Otros valores posibles incluyen lo siguiente.
Código devuelto | Descripción |
---|---|
|
Identificador no válido devuelto en el parámetro hwnd. |
|
La ventana especificada ya se ha registrado como destino de colocación. |
|
Memoria insuficiente para la operación. |
Comentarios
Si la aplicación puede aceptar objetos descartados durante las operaciones de arrastrar y colocar OLE, debe llamar a la función RegisterDragDrop . Haga esto cada vez que una de las ventanas de la aplicación esté disponible como posible destino de eliminación; es decir, cuando la ventana aparece sin proteger en la pantalla.
El subproceso de aplicación que llama a la función RegisterDragDrop debe bombear mensajes, presumiblemente llamando a la función GetMessage con un parámetro hWndNULL, porque OLE crea ventanas en el subproceso que necesitan mensajes procesados. Si no se cumple este requisito, cualquier aplicación que arrastre un objeto sobre la ventana registrada como destino de colocación se bloqueará hasta que se cierre la aplicación de destino.
La función RegisterDragDrop solo registra una ventana a la vez, por lo que debe llamarla para cada ventana de aplicación capaz de aceptar objetos descartados.
A medida que el mouse pasa por partes no protegidas de la ventana de destino durante una operación de arrastrar y colocar OLE, la función DoDragDrop llama al método IDropTarget::D ragOver especificado para la ventana actual. Cuando una operación de colocación se produce realmente en una ventana determinada, la función DoDragDrop llama a IDropTarget::D rop.
La función RegisterDragDrop también llama al método IUnknown::AddRef en el puntero IDropTarget .
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | ole2.h |
Library | Ole32.lib |
Archivo DLL | Ole32.dll |
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de