Перетащите использование Отбрасывания SendMessage

Это звучит забавным.. просто немного эксперимента.
я хотел моделировать отбрасывание перетаскивания файла на использовании Приложения/Окна, Отправляют сообщение. Действительно ли это возможно?

У меня нет кода для приложения, но на исполняемом файле.

Приложение является IP Messenger.

То, что я хотел сделать, использовать, "Отправляют К" функциональности для отправки файла в .exe, который будет
найдите окно IPMessenger и моделируйте отбрасывание перетаскивания thr код.

Пользователь выберет файл и щелкнет правой кнопкой по "send to" к .exe, который сделает, перетаскивают отбрасывание из кода.

** Примечание: IP Messenger поддерживает операцию перетаскивать-отбрасывания для файлов

спасибо
amit

7
задан Amitd 12 June 2013 в 16:49
поделиться

1 ответ

Есть WM_DROPFILES Сообщение. Я полагаю, что вы могли бы использовать CreateToolhelp32Snapshot для нахождения окна, которое является IP Messenger, а затем создать структуру DROPFILES для отправки с сообщением WM_DROPFILES.

Последняя ссылка - на Codeproject, где есть помощь в создании структуры DROPFILES: How to Implement Drag and Drop Between Your Program and Explorer.


Вместо использования CreatToolhelp32Snapshot вы могли бы использовать FindWindow функцию. Здесь вы получите HWND для IP Messenger напрямую, вместо CTh32S, которая найдет только HANDLE для процесса.

Когда это будет сделано, вы создадите структуру DROPFILES. Прочитайте комментарии по ссылке CodeProject в разделе "Initiating a drag and drop" для получения дополнительной информации о том, как это сделать.

И, наконец, вы отправляете его с помощью sendmessage

SendMessage(ipMessHWND, WM_DROPFILES, (HDROP)&myDropFiles, 0);
4
ответ дан 7 December 2019 в 14:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: