|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
20.01.2011, 08:37 | #1 |
Пользователь
Регистрация: 22.03.2010
Сообщений: 33
|
Ошибка "Файл не найден" при выборе большого числа файлов
Здравствуйте уважаемые знатоки! Прошу вашей помощи.
При выборе большого количества файлов, с помощью компонента opendialog, выводится ошибка, что какой-либо файл, из выбранных, не найден. В районе 600 файлов открывает нормально, без ошибок. Почему так происходит? Как мне преодолеть эту ошибку. Тут дело в том, что у меня проигрыватель аудиофайлов, и нужно в плейлист загружать ну хотя бы пару тысяч песен. |
20.01.2011, 08:56 | #2 |
Новичок
Джуниор
Регистрация: 22.12.2007
Сообщений: 204
|
Код в студию.
|
20.01.2011, 09:30 | #3 |
Пользователь
Регистрация: 22.03.2010
Сообщений: 33
|
Какой код? Там одна строка для открытия opendialog.
Открывается opendialog, в нём я выделяю кучу файлов, нажимаю открыть, и не открывает он. ругается. а вот если поменьше выбрать, то всё норм. Проанализировал, что если имена файлов короткие, то можно больше открыть, чем при длинных именах файлов. |
20.01.2011, 09:36 | #4 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Скажите хотябы, что за ошибка? Что компилятор выдаёт?
У меня подозрение, что под буфер выделяется мало памяти, такое иногда случается. Но не проанализировав сообщение компилятора, трудно сказать что-либо более внятное.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
20.01.2011, 09:42 | #5 |
Форумчанин
Регистрация: 15.11.2007
Сообщений: 229
|
Может быть из-за того что в OpenDialog файлы передаются через TStrings, а его размер ограничен максимальным числом Integer или же параметр Text это тип string и он тоже ограничен каким-то максимальным размером?
Попробуйте посчитать размер OpenDialog1.Files.Text может он окажется 65535... UPD: Да, скорей всего всё ограничивается размером типа string (если судить по тому что если открывать файлы с короткими именами, то "влезает" больше.
Компьютер не подчиняется законам физики: глюки возникают из ниоткуда, файлы исчезают в никуда, а вес измеряется в метрах.
|
20.01.2011, 10:35 | #6 |
Подтвердите свой е-майл
Регистрация: 19.12.2010
Сообщений: 808
|
|
20.01.2011, 12:15 | #7 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,527
|
Цитата:
SelectDirectory + FindFirst + while + FindNext = узнать все файлы в указанной папке. как пользоваться примеры в справке (F1 Delphi Example) поиск по форуму google поиск использовать в любом порядке. P.S. SelectDirectory есть ДВЕ функции с одинаковым прототипом (delphi7) uses Qdialog uses fileCtrl
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 20.01.2011 в 12:29. |
|
20.01.2011, 14:19 | #8 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
Так захотел Борланд:
Код:
Вызвать GetOpenFileName() руками, и задать в nMaxFile буфер побольше.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
20.01.2011, 20:15 | #9 | |
Пользователь
Регистрация: 22.03.2010
Сообщений: 33
|
Цитата:
И как потом из этой функции извлечь: имена файлов полные, имена файлов обычные, и путь к директории где они лежат? Буду очень признателен, если с комментариями напишите. Последний раз редактировалось Stilet; 20.01.2011 в 20:25. |
|
20.01.2011, 21:13 | #10 |
Форумчанин
Регистрация: 08.08.2010
Сообщений: 371
|
Попробуй драг & дроп юзать
Хакинг - не преступление, а способ выживания.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка "не найден файл vc60.bpl" обьясните | Нур | C++ Builder | 4 | 22.12.2009 23:12 |
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" | aleksei78 | Microsoft Office Excel | 13 | 25.08.2009 12:04 |
Ошибка при использовании OlePropertyGet("Documents").OleProcedure("Add") в C++ Builder | AleksP | C++ Builder | 7 | 11.04.2009 13:06 |
настроить при открытии Excel 2003 в окошке "Тип файлов" вывод пункта "Все файлы (*.*)" по умолчанию? | Unior | Microsoft Office Excel | 2 | 01.03.2009 02:42 |