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);

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...