微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 使用SendMessage拖放

这听起来很有趣……只是一个小实验.
我想使用发送消息模拟应用程序/窗口上文件的拖放.
可能吗?

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

该应用程序是IP Messenger.

我想要做的是使用“发送到”功能文件发送到.exe,这将
找到IPMessenger窗口并模拟拖放thr代码.

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

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

谢谢
阿米特

解决方法

WM_DROPFILES Message.我想您可以使用 CreateToolhelp32Snapshot找到IP Messenger窗口,然后构建DROPFILES结构以使用WM_DROPFILES消息发送.

最后一个链接是Codeproject,在创建DROPFILES结构方面有一些帮助:How to Implement Drag and Drop Between Your Program and Explorer.

您可以使用FindWindow功能,而不是使用CreatToolhelp32Snapshot.在这里,您将直接获得IPND for IP Messenger,而不是CTh32S,它只能找到进程的HANDLE.

完成后,您将创建DROPFILES结构.阅读“启动拖放”部分中的CodeProject链接上的注释,了解更多信息.

最后你用sendmessage发送它

SendMessage(ipMessHWND,WM_DROPFILES,(HDROP)&myDropFiles,0);

原文地址:https://www.jb51.cc/csharp/100366.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐