Форум: "Прочее";
Текущий архив: 2008.06.01;
Скачать: [xml.tar.bz2];
ВнизБольшой ресурс. Правильно ли? Найти похожие ветки
← →
Дмитрий С (2008-04-18 09:48) [0]Конструктивно:
В EXE файле находится один большой ресурс (~600 мб).
Используется он следующим образом:
Создается экземпляр TResourceStream, и уже с помощью него достаются требуемые его части.
Вобщем меня интересуют вопросы: загружается ли весь ресурс в память или Windows будет брать его из файла по мере надобности?
Что измениться, если вдруг я сожму программу с помощью ASPack?
Будет лучше, если данный ресурс хранить в виде отдельного файла рядом с программой?
← →
DrPass © (2008-04-18 09:58) [1]1. Ресурс загружается, когда делается LockResource
2. Скорее всего, ничего (имеется в виду в отношении ресурса). Стоит проверить
3. Да
← →
Комментатор © (2008-04-18 10:01) [2]Если сожмешь ASPack"ом, то каждый раз при запуске программы будешь ждать, пока все распакуется. А сколько нужно времени для распаковки ~600 МБ?
← →
DrPass © (2008-04-18 10:04) [3]
> Если сожмешь ASPack"ом, то каждый раз при запуске программы
> будешь ждать, пока все распакуется
А она точно пакует и ресурсы? Там, кажется, при желании можно только исполняемый код паковать
← →
Slym © (2008-04-18 10:05) [4]Дмитрий С (18.04.08 9:48)
Сожми ресурс и пользуй связку TResourceStream+TКакойнитьDecompressionStream
← →
Игорь Шевченко © (2008-04-18 10:06) [5]
> Будет лучше, если данный ресурс хранить в виде отдельного
> файла рядом с программой?
Безусловно
← →
Комментатор © (2008-04-18 10:11) [6]> [3] DrPass © (18.04.08 10:04)
>Там, кажется, при желании можно только исполняемый код паковать
Вполне возможно. А смысл?
← →
DrPass © (2008-04-18 10:25) [7]
> Вполне возможно. А смысл?
Для корректной обработки таких вот извращенных ситуаций.
Хотя смысл целесообразности существования виндовых упаковщиков вообще под большим сомнением
← →
Ega23 © (2008-04-18 10:57) [8]
> В EXE файле находится один большой ресурс (~600 мб).
Нафига такое извращение???
← →
Дмитрий С (2008-04-18 11:12) [9]
> Нафига такое извращение???
>
Данные, которые "отображает" программа. Уже решено, что это будет отдельный файл.
Вопрос теперь в том, как контролировать его целостность.
← →
Ega23 © (2008-04-18 11:15) [10]
> Данные, которые "отображает" программа.
Вот в моём бывшем проекте и 3D-графика была, и звук, и отображалось всего дофига. И в БД всё это дело занимало 4 Мб.
← →
Дмитрий С (2008-04-18 11:26) [11]
> Вот в моём бывшем проекте и 3D-графика была, и звук, и отображалось
> всего дофига. И в БД всё это дело занимало 4 Мб.
Ну это у меня в пределе 600 (на будущее). А реальная ситуация: метров 200 за счет видеороликов.
← →
Anatoly Podgoretsky © (2008-04-18 11:27) [12]> Дмитрий С (18.04.2008 11:12:09) [9]
Ну например CRC
← →
Anatoly Podgoretsky © (2008-04-18 11:29) [13]> Дмитрий С (18.04.2008 11:26:11) [11]
Ну и прекрасно, ни у кого не поднимется рука сказать, что программа студенческая.
Будет уважение вызывать.
А хочешь стать профессионалом?
← →
Ega23 © (2008-04-18 11:29) [14]
> Ну это у меня в пределе 600 (на будущее). А реальная ситуация:
> метров 200 за счет видеороликов.
Храни в БД. При таких объёмах - самое оно.
← →
Дмитрий С (2008-04-18 11:58) [15]
>
> Храни в БД. При таких объёмах - самое оно.
>
Да ну...
Например, будет видеоролик 100 МБ: сколько усилий для ПК потребуется, чтобы его загрузить. А еще хочеться, чтобы файл был хоть и примитивно, но зашифрован. Я думаю, что БД будет сильно напрягать.
Да и к тому же у меня уже все готово, осталось только выбрать между TFileStream и TResourceStream. Но, собственно, я уже выбрал первое.
> Ну например CRC
Тут тоже нюансы есть. Например, при большом размере файла данных подсчет CRC займет много времени. Особенно, если файл храниться на CD. Причем это время будет потрачено даже не в пользу пользователя.
Пока я склоняюсь к подсчету CRC заголовка файла + проверка разумности данных, указанных в заголовке.
Как вариант - использовать по-блочный CRC.
← →
Ega23 © (2008-04-18 12:02) [16]Доюавляй к своему видеоролику какой-нибудь заголовок, в нём пиши какой-нибудь свой magic.
← →
Игорь Шевченко © (2008-04-18 12:16) [17]Человек, шифрующий видеоролики, страдает аберрациями поведения.
← →
han_malign © (2008-04-18 12:22) [18]
> Пока я склоняюсь к подсчету CRC заголовка файла + проверка
> разумности данных, указанных в заголовке.
- а на хрена вообще проверять целостность мультимедийного контента? "Особенно, если файл храниться на CD."
Забота о целостности контетна лежит на системе/админе/юзвере, а если умерла - так умерла... А то еще целостность приложения пропроверить, и целостность в памяти функции проверяющей целостность, заодно диски и реестр на предмет вирусов и повреждений просканировать, размножиться по сети и там все проверить...
Это уже параноя - защита нужна "от дурака", а не от идиота...
А "файл был хоть и примитивно, но зашифрован" - решает проблему с аутентичностью контента...
З.Ы. В один файл есть смысл упаковывать большое количество мелких данных, большие потоки разумней хранить отдельными файлами. Опять таки, при нужде можно легко сделать "облегченную" версию исключив "тяжелый" контент.
← →
Дмитрий С (2008-04-18 12:26) [19]
> Игорь Шевченко © (18.04.08 12:16) [17]
Видеоролики, просто, под раздачу попали=) А в пример я их привел потому, что они много места занимают. Вот так вот оправдался =)
А вот текстовый контент в файле неплохо бы и скрыть, что я и сделал=)
А мне интересно. Аберрaция - отклонение от рaционaльного мышления или поведения. Тогда "аберрации поведения" - тавтология?
← →
Anatoly Podgoretsky © (2008-04-18 12:30) [20]> Пока я склоняюсь к подсчету CRC заголовка файла + проверка разумности данных, указанных в заголовке.
Тебе Паркинсон докажет, что ты неправ.
← →
Дмитрий С (2008-04-18 12:30) [21]
> а на хрена вообще проверять целостность мультимедийного
> контента?
Целостность контента мне, собственно, побоку. А вот целостность файла, точнее структуры файла, в котором данный контент храниться - имеет значение. Т.к. если ее нарушить, программа может выдать "хрен знает что".
> А "файл был хоть и примитивно, но зашифрован" - решает проблему
> с аутентичностью контента...
Не совсем понятно о чем речь.
← →
Anatoly Podgoretsky © (2008-04-18 12:32) [22]
> Как вариант - использовать по-блочный CRC.
Что то меняет, вместо одной проверки - несколько, но все равно надо проверять весь файл. Правда интересно, а зачем его проверять, ты что его пересылаешь через Интернет?
← →
Дмитрий С (2008-04-18 12:36) [23]
> Что то меняет, вместо одной проверки - несколько, но все
> равно надо проверять весь файл. Правда интересно, а зачем
> его проверять, ты что его пересылаешь через Интернет?
Каждый блок проверяется только тогда, когда он понадобился. Т.е. файл проверяется по мере надобности, а не целиком сразу.
> Правда интересно, а зачем его проверять,
Чтобы избежать "глюков"
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2008.06.01;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.042 c