这听起来很有趣......只是一个小实验 我想使用发送消息模拟应用程序/窗口上文件的拖放。 有可能吗?
我没有应用程序的代码,但是在可执行文件上。
该应用程序为IP Messenger。
我想要做的是使用“发送到”功能将文件发送到.exe,这将是 找到IPMessenger窗口并模拟拖放thr代码。
用户将选择该文件并右键单击“发送到”.exe,它将从代码中拖放。
**注意:IP Messenger支持文件的拖放操作
THX
amit
答案 0 :(得分:4)
有WM_DROPFILES
Message。我想您可以使用CreateToolhelp32Snapshot
找到IP Messenger窗口,然后构建DROPFILES
结构以发送WM_DROPFILES
消息。
最后一个链接是Codeproject,在创建DROPFILES
结构时提供了一些帮助:How to Implement Drag and Drop Between Your Program and Explorer。
您可以使用FindWindow
功能,而不是使用CreatToolhelp32Snapshot
。在这里,您将直接获得IP Messenger的HWND
,而不是CTh32S
,而HANDLE
只会找到该流程的DROPFILES
。
完成此操作后,您将创建SendMessage(ipMessHWND, WM_DROPFILES, (HDROP)&myDropFiles, 0);
结构。阅读“启动拖放”部分中的CodeProject链接上的注释,了解更多信息。
最后你用sendmessage发送它
{{1}}