[SHELL32] Support IDropTarget handler in IContextMenu static verbs (#5860)
authorWhindmar Saksit <whindsaks@proton.me>
Sun, 24 Mar 2024 17:23:07 +0000 (18:23 +0100)
committerGitHub <noreply@github.com>
Sun, 24 Mar 2024 17:23:07 +0000 (18:23 +0100)
commit373816c729a7186ba2049cabc7a32a585f899ab7
tree566e90aee0fc8f945e6c0d249d26f162cce1cfa5
parent54df31ccacbe45201615ad48239b51dcfffab688
[SHELL32] Support IDropTarget handler in IContextMenu static verbs (#5860)

This adds support for the `DropHandler` subkey in static verbs. `IDropTarget` is called when the verb is invoked. The advantage of this is that no library needs to be loaded until the verb is actually invoked unlike `IContextMenu` shell extensions that have to be loaded during menu creation.

This method is preferred for verb implementations that must work on Windows XP, see
https://learn.microsoft.com/en-us/previous-versions/windows/desktop/legacy/dd940354%28v%3Dvs.85%29?redirectedfrom=MSDN#description
dll/win32/shell32/CDefaultContextMenu.cpp