首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SendMessage拖放

使用SendMessage拖放
EN

Stack Overflow用户
提问于 2010-01-15 18:12:56
回答 1查看 4.6K关注 0票数 7

这听起来像是funny..just的一个小实验。

我想使用Send Message来模拟在应用程序/窗口上拖放文件的过程。有可能吗?

我没有应用程序的代码,但在可执行文件上。

应用程序是IP Messenger

我想要做的是使用“发送到”功能将文件发送到.exe,它将

找到IPMessenger窗口并模拟拖放代码。

用户将选择文件,然后右键单击“发送到”到.exe,它将从代码中拖放。

**注意: IP Messenger支持文件的拖放操作

thx

阿米特

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-03-16 04:38:58

这就是WM_DROPFILES Message。我猜您可以使用CreateToolhelp32Snapshot来定位作为IP信使的窗口,然后构建要与WM_DROPFILES消息一起发送的DROPFILES结构。

最后一个链接指向Codeproject,其中包含一些关于创建DROPFILES结构的帮助:How to Implement Drag and Drop Between Your Program and Explorer

您可以使用FindWindow函数而不是CreatToolhelp32Snapshot。在这里,您将直接获得IP Messenger的HWND,而不是CTh32S,后者将仅定位进程的HANDLE

完成此操作后,您将创建DROPFILES结构。请阅读“启动拖放”部分中CodeProject链接上的注释,以了解有关操作的更多信息。

最后你用sendmessage发送它

代码语言:javascript
复制
SendMessage(ipMessHWND, WM_DROPFILES, (HDROP)&myDropFiles, 0);
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2070740

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档