Предотвратить перетаскивание от Windows Explorer от замораживания окна?

В некотором плохо реализованном программном обеспечении (в моем случае, iPhoneBrowser и MP3Gain, но существуют другие) после перетаскивания файла/папки из проводника в программу, окно проводника станет неприменимым, пока программа не закончит свою операцию. Это не может быть изменено, перемещено или минимизировано, и ни одна из кнопок или значков не может взаимодействоваться с (курсор застревает на "отбрасывании здесь" курсор). Это длится, пока программа не заканчивает свою операцию, по которой возможно открыть другое окно проводника и переместиться назад там, но исходное окно все еще замораживается.

Чтобы быть ясным, это происходит со сторонним программным обеспечением, которое отвечает на перетаскивание в потоке, который создал событие. Копирование файлов в проводнике не инициировало проблему.

Существует ли способ предотвратить это поведение, таким образом, я могу все еще взаимодействовать с окном проводника, в то время как программа выполняет в своей вещи ее собственный thread/process/whatever? У меня есть Windows 7 x64, но поведение присутствовало в XP32 также, IIRC.

2
задан 17.03.2016, 09:59

5 ответов

Это ЯВЛЯЕТСЯ закрепляемым*, но необходимо будет изменить рабочий процесс немного.

То, в чем Вы нуждаетесь, является вспомогательным приложением, которое реализует обе стороны перетаскивания. Когда файлы отбрасываются этому помощнику, IDropTarget сделает копию списка отбрасывания и затем бесплатного проводника к выполнению других вещей. Затем Вы перетащите от помощника к iPhoneBrowser, который заблокирует только копию списка отбрасывания а не оригинала, используемого проводником.

Многопоточностью помощник должно также быть возможно постараться не замораживать его в течение какого-то времени.

*Некоторая сборка требуется. Если Вы не программист, подружились с одним

1
ответ дан 08.12.2019, 05:08

Я не уверен, если я понимаю Вашу проблему правильно, но Вы рассмотрели открытие второго окна проводника?

3
ответ дан 08.12.2019, 05:08

Я записал программы, которые обработали перетаскивание файлов и могут сказать, что эта ситуация будет только существовать для плохо записанных программ обработки отбрасывания файла.

Ленивые программисты сохранили список отбрасывания открытым при обработке файлов, таким образом замораживании Проводника, вместо того, чтобы просто сначала выйти из всего этого имена перемещаемого файла и затем закрыть список, чтобы к бесплатному Проводнику ПРЕЖДЕ, ЧЕМ сделать обработку.

2
ответ дан 08.12.2019, 05:08

Что относительно приложения, которое принимает весь процесс копирования? например, SuperCopier 2

1
ответ дан 08.12.2019, 05:08

Это может походить на странный ответ, но для больших операций копирования я склонен использовать xcopy. Да, который я сначала изучил, как использовать с DOS 6. Это все еще работает.

0
ответ дан 08.12.2019, 05:08

Теги

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