![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Открыть с помощью [D7, WinXP]
Пётр © (2008-03-28 21:38:00)Мне надо, чтобы при открытии нескольких файлов с помощью моей проги она их принимала. Но когда я OnCreate пишу showmessage(GetCommandLine);, показывает тока один файл. Почему?
Ort (2008-12-01 21:29:00) [1]2Гурманчик
о вы жжоте сударь...1 - если архив разбит тоталом то запускай файл с расширением crc...2 - если у тя архивы извлекай из любого.
Гурманчик (2008-12-01 19:09:00) [2]Удалено модератором
Гурманчик (2008-12-01 18:12:00) [3]Удалено модератором
clickmaker (2008-12-01 15:52:00) [4]> чтоб вместо "файлов" были "папки"
это как?
Сергей М. (2008-12-01 15:51:00) [5]
> почему мою сообщение удаляют?
Потому что ты злостно нарушаешь правила конференции WinAPI.
Гурманчик (2008-12-01 15:34:00) [6]Удалено модератором
Гурманчик (2008-12-01 15:34:00) [7]Удалено модератором
(2008-12-01 05:53:00) [8]Удалено модератором
Германн (2008-03-30 00:48:00) [9]
> Пётр (30.03.08 00:06) [14]
>
> Возможно, из-за того, что сообщения приходят быстрее, чем
> открываются-закрываеются файлы в TMediaPlayer
Ты WinAmp знаешь? Видел где-нибудь, когда-нибудь чтобы он открывал несколько файлов сразу? Да он принимает "наборы файлов" для последующего их последовательного открытия. Но не через "Открыть с помощью". Думаешь его дураки делали?
Andy BitOff (2008-03-30 00:20:00) [10]Нет, узнать это нельзя. Просто принимай файлы и делай их список. Сделай таймаут, если, скажем за сек. ничего нового не пришло, то с большой вероятностью можно утверждать, что это всё, вот тогда и начинай обработку.
Пётр (2008-03-30 00:06:00) [11]Возможно, из-за того, что сообщения приходят быстрее, чем открываются-закрываеются файлы в TMediaPlayer, происходят накладки и ошибка. Я хочу сделать так, чтобы при обработке последнего сообщения в очереди циклом обрабатывать все предыдущие, без накладок.
DVM (2008-03-29 23:54:00) [12]
> можно при этом узнать, сколько ещё в очереди?
а зачем?
Пётр (2008-03-29 23:36:00) [13]А когда программа последовательно запускается с каждым файлом, можно при этом узнать, сколько ещё в очереди?
DVM (2008-03-29 20:01:00) [14]
> Пётр (28.03.08 21:38)
> Почему?
Чтобы так сделать, надо чтобы вторая и последующие копии программы понимали, что уже запущена первая копия и передавали файлы ей на открытие. Проще всего это сделать, послав окну программы сообщение WM_DROPFILES.
Пётр (2008-03-29 17:12:00) [15]Ок, спасибо.
{RASkov} (2008-03-29 16:45:00) [16]> "Открыть с помощью > " - так и правильно.
Ну может быть не логично при выборе двух файлов (*.txt и *.mp3) пытаться открыть их все(оба) винампом или блокнотом или вообще фотошопом....
Поэтому виндовс передает только один конкретный файл в программу... т.е. если случится АВ(ошибка) то по возможности одна, хотя тоже зависит от программы... и один "неправильный для программы файл" сможет подвесить систему надолго, а то и навечно :)
{RASkov} (2008-03-29 16:38:00) [17]> [7] Пётр (29.03.08 14:27)
> А как правильно?
"Открыть с помощью > " - так и правильно. Так и должно быть - один файл на котором и был щелчек мышью...
При выборе данного пункта и другие программы так же себя ведут - т.е. открывается только один файл.
Я говорил[3] про свой пункт меню в контекстном меню файла в проводнике..... т.е. нечто "Открыть МайПрограмм"... тогда вот при кучи выделенных файлов и будет [3]...
Пётр (2008-03-29 14:27:00) [18]Выделяется три mp3 файла, на одном из них делается правый клик, "Открыть с помощью" моей проги. Программа запускается один раз, с тем файлом, на котором был правый клик. А как правильно?
{RASkov} (2008-03-29 12:17:00) [19]Кстати, да. Вопрос [5](т.е. ответ на него) возможно сделает неправильным ответ в [3]...)
Германн (2008-03-29 00:40:00) [20]
> Пётр (28.03.08 21:38)
>
> Мне надо, чтобы при открытии нескольких файлов с помощью
> моей проги она их принимала.
А каким образом ты пытался "открыть с помощью" своей программы несколько файлов?