Как перетащить список файлов в окно

У меня есть очень длинный список файлов типа.png, расположенный в файле.txt. Можно ли перетащить этот список в работающую программу Windows? Я точно знаю, что эта программа принимает файлы, когда я перетаскиваю их из проводника Windows в запущенное окно. (Объяснение того, как работает перетаскивание, может быть полезным.)

2 ответа

Программы Windows потребляют "сообщения" из операционной системы в цикле обработки сообщений или в обработчике сообщений. Перетаскивание работает на этом уровне - приложение получает сообщение "Входящие перетаскиваемые вещи" - оно находится на том же уровне, что и то, что происходит при нажатии кнопки или изменении размера окна.

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

COM-компоненты и тому подобное могут подключаться, чтобы добавлять или изменять эти поведения (так что это возможно сделать), но стандартная стандартная Windows AFAIK не делает этого или предоставляет любую такую ​​утилиту, которая делает перетаскивание похожим на Вы описываете. Я не знаю утилиты, которая обеспечивает это.

Что-то говорит мне gvim или другой текстовый редактор с поддержкой сценариев может сделать это все же.

Если ваш список файлов разделен новыми строками, и вы можете заменить эти новые строки пробелом, вы можете преобразовать его в разделенный пробелами список файлов и использовать cmd.exe вызвать исполняемый файл команды с список файлов в качестве аргументов вручную.

Приложение должно иметь возможность анализировать отброшенный текст.

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

Отбрасывая текст, он должен "знать", как обращаться с текстом - совершенно другая проблема.
Текст может быть ссылкой на файл, начальный файл:// или URL, http:// ... или это может быть просто имя mypic.png
Он сможет обрабатывать первые 2 как установленные протоколы, но что он будет делать с mypic.png? Это не файл PNG, просто название одного. Он не знает, с чего начать, чтобы найти, где он должен быть; если такой файл существует на вашем локальном компьютере или где-то на веб-сайте.

Другие вопросы по тегам