Размер файла .resx - PullRequest
       1

Размер файла .resx

2 голосов
/ 25 августа 2011

Я работаю в Visual Studio 2010, на довольно мощной машине.У меня есть решение с несколькими различными проектами под ним, например,

Solution
  Activations
  DatabaseManager
  Library
  VideoResources
  WindowsNewUI <--- start up project

В видеоресурсах у меня есть один файл .resx, в который я поместил около 700 МБ сжатых видео.Когда я создаю этот проект сам по себе, сборка завершается успешно.Затем я нажимаю клавишу f5, чтобы запустить новый пользовательский интерфейс, и мне выдаётся эта ошибка.

Ошибка 1 Неожиданная ошибка записи метаданных в файл VideoResources.dll - «Недостаточно памяти для выполнения этой операции.

Я немного покопался, и это похоже на проблему с бараном.Я попытался исправить / 3gb путем редактирования файла .ini, но это не решает проблему.

Мой вопрос: какого черта я здесь делаю неправильно, я знаю, что 700 МБ - это много видео, но нет никаких причин, по которым этот конкретный проект должен быть создан, но затем потерпит неудачу остальная часть моего проекта,что-то еще происходит здесь?Имеет ли модификатор доступа этот файл ресурсов проекта?Как я могу решить эту проблему?

Кроме того, если я помещаю около половины моих видеофайлов в .resx, то все работает просто отлично.

Ответы [ 2 ]

5 голосов
/ 25 августа 2011

Мое предложение было бы не хранить видео в любом типе встроенного ресурса. Это собирается принести нам ваше приложение кучу памяти, пока оно работает. Я бы посоветовал вам просто оставить файлы на диске и загрузить их оттуда. Это также решит вашу проблему.

2 голосов
/ 25 августа 2011

Файловая инфраструктура ресурсов, вероятно, не рассчитана на масштабирование до этих размеров файлов. Помните, что каждая операция в файле resx происходит в памяти, и вы используете язык для сбора мусора.

Почему бы просто не сохранить видео в файловой системе и читать их по мере необходимости?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...