EugeneRoshal
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Aniskin Цитата: Я могу скидывать файлы в окно Проводника на следующие элементы | Да, вы правы. Знание текущей папки проводника нам для drag&drop не поможет. Значит этот вариант, к сожалению, отпадает. Цитата: Но если уж реально хочется использовать хаки, то рекомендую просто определять, что target-окно является окном, принадлежащим процессу explorer.exe. Если это условие выполняется, то в IDataObject отдавать только CF_FILEDESCRIPTOR/CF_FILECONTENTS. | Насколько я понимаю, при использовании CF_FILEDESCRIPTOR и CF_FILECONTENTS даже не нужно проверять explorer.exe это или нет. Но проблема в том, что переделать распаковку всех поддерживаемых форматов на работу с IStream слишком трудоемко. Кроме того, NTFS alternate data streams при использовании CF_HDROP и временных файлов распаковываются и переносятся, а при использовании CF_FILEDESCRIPTOR и CF_FILECONTENTS теряются. beathiful Что-то у вас WinRAR время модификации файлов установить не может. Посмотрите, включена ли по умолчанию опция "Set modification time" на странице "Advanced" диалога распаковки. А во втором вашем примере в чем именно проблема? Не распаковывается exe файл? Если вы WinRAR устанавливали не сами, я бы удалил его через uninstall и установил заново, чтобы не зависеть от чужих настроек. Только если в каталоге WinRAR есть ключ регистрации rarreg.key, скопируйте его куда-нибудь перед этим, чтобы не потерять в процессе переинсталляции. Впрочем, Pasha_ZZZ может быть прав, и дело может быть в антивирусе, а не WinRAR. |