Explorer and Drag&Drop - работа с фалами
От: KoraK Россия http:\\none.ru
Дата: 22.07.01 14:35
Оценка:
Как перетащить файл в окно приложения и получить его путь.
И обратно — перетацить файл из окна — то есть опеределить куда перетацили файл.

Все вроде просто, но видимо ДНК плохое :)
Re: Explorer and Drag&Drop - работа с фалами
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.07.01 08:09
Оценка:
Здравствуйте KoraK, вы писали:

KK>Как перетащить файл в окно приложения и получить его путь.

KK>И обратно — перетацить файл из окна — то есть опеределить куда перетацили файл.

KK>Все вроде просто, но видимо ДНК плохое :)


Надо зарегистрировать окно с стилем WS_EX_ACCEPTFILES

И обрабатывать WM_DROPFILES
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[2]: Explorer and Drag&Drop - работа с фалами
От: KoraK Россия http:\\none.ru
Дата: 25.07.01 08:31
Оценка:
Здравствуйте adontz, вы писали:

A>Здравствуйте KoraK, вы писали:


KK>>Как перетащить файл в окно приложения и получить его путь.

KK>>И обратно — перетацить файл из окна — то есть опеределить куда перетацили файл.

KK>>Все вроде просто, но видимо ДНК плохое :)


A>Надо зарегистрировать окно с стилем WS_EX_ACCEPTFILES


A>И обрабатывать WM_DROPFILES


Ok. Thx. Но как обратно в эксплорер ? Посылать WM_DROPFILES ?
Re[3]: Explorer and Drag&Drop - работа с фалами
От: Sasparella США  
Дата: 25.07.01 13:56
Оценка:
Здравствуйте KoraK, вы писали:


A>>И обрабатывать WM_DROPFILES


KK>Ok. Thx. Но как обратно в эксплорер ? Посылать WM_DROPFILES ?


А что значит Обратно ??? Это пользователь тащит, а виндоус посылет окну над которым drop-нули файлы сообщение об этом.

Или вы хотите сэмулировать перетаскивание файлов ?
Re[4]: Explorer and Drag&Drop - работа с фалами
От: KoraK Россия http:\\none.ru
Дата: 25.07.01 16:16
Оценка:
Здравствуйте Sasparella, вы писали:

S>Здравствуйте KoraK, вы писали:



A>>>И обрабатывать WM_DROPFILES


KK>>Ok. Thx. Но как обратно в эксплорер ? Посылать WM_DROPFILES ?


S>А что значит Обратно ??? Это пользователь тащит, а виндоус посылет окну над которым drop-нули файлы сообщение об этом.


S>Или вы хотите сэмулировать перетаскивание файлов ?


Нет, мне нужно что бы файлы можно было из моей программы также тащить и дропать в окошко Windows Explorera (WE). Как дропать из WE в свою прогу я разобрался. А вот обратный процес не очень ясен.
Re[5]: Explorer and Drag&Drop - работа с фалами
От: Sasparella США  
Дата: 25.07.01 16:28
Оценка:
Здравствуйте KoraK, вы писали:

KK>Здравствуйте Sasparella, вы писали:


S>>Здравствуйте KoraK, вы писали:



A>>>>И обрабатывать WM_DROPFILES


KK>>>Ok. Thx. Но как обратно в эксплорер ? Посылать WM_DROPFILES ?


S>>А что значит Обратно ??? Это пользователь тащит, а виндоус посылет окну над которым drop-нули файлы сообщение об этом.


S>>Или вы хотите сэмулировать перетаскивание файлов ?


KK>Нет, мне нужно что бы файлы можно было из моей программы также тащить и дропать в окошко Windows Explorera (WE). Как дропать из WE в свою прогу я разобрался. А вот обратный процес не очень ясен.



В MSDN есть статья

"Drag and Drop: Implementing a Drop Source"

правда, там описывается как это сотворить на MFC, но классам MFC как правило соответствуют Api функции, так что наверное вам подойдет?

Саша.
Re[6]: Explorer and Drag&Drop - работа с фалами
От: KoraK Россия http:\\none.ru
Дата: 25.07.01 16:51
Оценка:
Здравствуйте Sasparella, вы писали:

S>Здравствуйте KoraK, вы писали:


KK>>Здравствуйте Sasparella, вы писали:


S>>>Здравствуйте KoraK, вы писали:



A>>>>>И обрабатывать WM_DROPFILES


KK>>>>Ok. Thx. Но как обратно в эксплорер ? Посылать WM_DROPFILES ?


S>>>А что значит Обратно ??? Это пользователь тащит, а виндоус посылет окну над которым drop-нули файлы сообщение об этом.


S>>>Или вы хотите сэмулировать перетаскивание файлов ?


KK>>Нет, мне нужно что бы файлы можно было из моей программы также тащить и дропать в окошко Windows Explorera (WE). Как дропать из WE в свою прогу я разобрался. А вот обратный процес не очень ясен.



S>В MSDN есть статья


S>"Drag and Drop: Implementing a Drop Source"


S>правда, там описывается как это сотворить на MFC, но классам MFC как правило соответствуют Api функции, так что наверное вам подойдет?


S>Саша.


Где именно есть эта статья, в каком разделе ? Мне необходимо решить все только API функциями. Использования как COM так и MFC неприемлимо. :(
Re[7]: Explorer and Drag&Drop - работа с фалами
От: Alex Fedotov США  
Дата: 25.07.01 17:00
Оценка:
Здравствуйте KoraK, вы писали:

KK>Где именно есть эта статья, в каком разделе ? Мне необходимо решить все только API функциями. Использования как COM так и MFC неприемлимо. :(


No way. Если хочешь реализовать drop source, COM придется использовать в любом случае. Все что нужно, это реализовать IDataObject, IDropSource и вызвать DoDragDrop.
-- Alex Fedotov
Re[8]: Explorer and Drag&Drop - работа с фалами
От: KoraK Россия http:\\none.ru
Дата: 25.07.01 17:32
Оценка:
Здравствуйте Alex Fedotov, вы писали:

AF>Здравствуйте KoraK, вы писали:


KK>>Где именно есть эта статья, в каком разделе ? Мне необходимо решить все только API функциями. Использования как COM так и MFC неприемлимо. :(


AF>No way. Если хочешь реализовать drop source, COM придется использовать в любом случае. Все что нужно, это реализовать IDataObject, IDropSource и вызвать DoDragDrop.


Драг энд дроп был до COM или я ошибаюсь ?
В любом случае желателен пример или ссылка на статью.
Re[9]: Explorer and Drag&Drop - работа с фалами
От: Alex Fedotov США  
Дата: 25.07.01 18:10
Оценка:
Здравствуйте KoraK, вы писали:

AF>>No way. Если хочешь реализовать drop source, COM придется использовать в любом случае. Все что нужно, это реализовать IDataObject, IDropSource и вызвать DoDragDrop.


KK>Драг энд дроп был до COM или я ошибаюсь ?


Да, был, в Windows 3.1. В Win32 это делается через COM.

KK>В любом случае желателен пример или ссылка на статью.


http://msdn.microsoft.com/library/en-us/shellcc/platform/Shell/Shell_basics/Transfer.asp
-- Alex Fedotov
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.