Перейти к содержанию
Fire Monkey от А до Я
  • 0

Хранение файлов


Alesk

Вопрос

В приложении имеется ~ 160 файлов общим весом ~ 30 мб, которые добавлены в проект через Deployment. Используются они след. образом:

Tpath.Combine(Tpath.GetDocumentsPath, 'Sample.file');

Проблема в том, что чем больше файлов становится, тем дольше приложение запускается(1 сек заставка, дальше ~ 5 сек черный экран), причем как на слабом железе, так и на мощном. Мб другой способ хранения файлов решит проблему? Если да, то какой?

Изменено пользователем Alesk
Ссылка на комментарий

Рекомендуемые сообщения

  • 0
  • Модераторы

даже если и с файлами ничего не делать, то код в модуле System.StartUpCopy выгружает файлы на устройство.

подумайте над другим способом хранения, например скачивание из интернета или база данных (не уверен что будет лучше, но попробовать можно)

Ссылка на комментарий
  • 0
1 час назад, ZuBy сказал:

даже если и с файлами ничего не делать, то код в модуле System.StartUpCopy выгружает файлы на устройство

Я не знаю как в других системах, но в MacOS выгружаются только те файлы, у которых в Deployment стоит Remote Path "Contents\Resources\StartUp\". Если его изменить (например на "Contents\Resources\"), то файлы уже не выгружаются и обращаться к ним можно как к обыкновенным файлам используя путь к исполняемому файлу приложения (TPath.GetLibraryPath)

Ссылка на комментарий
  • 0
  • Модераторы
3 часа назад, dnekrasov сказал:

Я не знаю как в других системах, но в MacOS выгружаются только те файлы, у которых в Deployment стоит Remote Path "Contents\Resources\StartUp\". Если его изменить (например на "Contents\Resources\"), то файлы уже не выгружаются и обращаться к ним можно как к обыкновенным файлам используя путь к исполняемому файлу приложения (TPath.GetLibraryPath)

а каким чудо способом они туда попадают?

Ссылка на комментарий
  • 0
  • Модераторы
16 часов назад, dnekrasov сказал:

Куда туда?

как файлы не выгружаясь оказываются на устройстве? папка не важна, если файл задеплоили, его приложение выгрузит из себя

Ссылка на комментарий
  • 0
5 часов назад, ZuBy сказал:

папка не важна

На Mac-е как раз таки важна. Если деплоится в  "Contents\Resources\StartUp\" (устанавливается по-умолчанию при добавлении файла вручную и для ресурсов), то после запуска приложения все файлы в этой папке выгружаются в TPath.GetHomePath, если же деплоить в  "Contents\Resources\" - то ничего никуда не выгружается (проверено на OS X El Capitan).

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...