powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Виртуальная файловая система
5 сообщений из 5, страница 1 из 1
Виртуальная файловая система
    #34518506
TopSpace
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет, вопрос следующий. Есть у меня куча файлов, необходимых для работы exe-шника (ресурсы всякие, картинки и т.п.). Слепляем все файлы в один здоровый (ну с некоторой внтуренней структурой хранения). Т.е. то, что часто делают для игр, виртуальный архив. Насколько я знаю, обычно обращаются к прослойке, передавая имя файла, он находит его в этом здоровом файле, и возвращает типа Stream, с которым должны уметь работать те функции, кому файл понадобился. Ну а если не умеют??? Или эта система вводится после написания всего функционала... КАК добиться полной прозрачности, что в моем exe любое обращение к файлу перехватывается. Получается что-то вроде виртуального диска, только надо
1) уметь его монтировать по любому пути (где лежит Exe, а не буква диска)
2) другие процессы не должны видеть подмонтированное устройство
подскажите, где копнуть?
...
Рейтинг: 0 / 0
Виртуальная файловая система
    #34518780
TopSpace
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так. Сужаем формулировку: монтирование виртуального диска с разрешением доступа только родительскому процессу.
...
Рейтинг: 0 / 0
Виртуальная файловая система
    #34519544
pandrew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TopSpaceТ.е. то, что часто делают для игр, виртуальный архив.Для игр часто используют storage, его конечно не спрячешь от всех, но зато все в одном флаконе, и любой не залезет.
...
Рейтинг: 0 / 0
Виртуальная файловая система
    #34520244
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TopSpaceКАК добиться полной прозрачности, что в моем exe любое обращение к файлу перехватывается. Получается что-то вроде виртуального диска, только надо
1) уметь его монтировать по любому пути (где лежит Exe, а не буква диска)
2) другие процессы не должны видеть подмонтированное устройство
подскажите, где копнуть?

Обеспечить 100% полиморфизм между файловой системой и файлом ресурсов будет довольно сложно. Вам придётся создать свой vxd драйвер для cutsom file system. Эта задача слишком сложна для простой игровой разработки и избыточна. Ведь игре-то по сути нужно всего лишь 1) открыть файл ресурсов. 2) выполнить по нему несколько элементарных диковых операций типа res_fopen(...) res_fread(...), res_close(...). А прочие FileAPI операции (создание директорий, просмотр, удаление/модификация файлов, смена АСL) будут игровому проекту просто не нужны.

За примерами реализаций можно обратится к опыту гигантов game-индустрии. К примеру ID Software хранит свои ресурсы в обыкновенных Zip архивах (с расширением pak). Это удобно с точки зрения транспортировки данных (большое количество мелких файлов компактно хранится). Кроме того, это в какой-то степени предохраняет хранилище от случайной корректировки или удаления файла. Это также практично с точки зрения выпуска мод-ов и аддон-ов.

Файлы логов, и настроечные файлы обычно хранятся в файловой системе отдельно.

Некоторые студии пытаются создавать свои собственные файловые форматы хранилищ, что в принципе создаёт трудности не столько для кракеров, но и для самого вендора. Ибо "накатить патч" на такое хранилище будет во много раз сложнее. Да и полезный эффект от такой защиты - сомнителен.

Поэтому я-бы посоветовал, для начала взять какую-нибудь free-ware библиотеку архивации и подстроить её под свои нужды. Ну а если вам не дают спать амбиции и желание быть скрытным - используйте какое-нить симметричное DES-шифрование данных архива фиксированным ключиком, вбив его предварительно в самые глубины ядра программного продукта. Это надёжно защитит ресурсы от кракера типа "любопытный студент".
...
Рейтинг: 0 / 0
Виртуальная файловая система
    #34524381
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ходи сюда:
http://icculus.org/projects/physfs/
Решит ВСЕ твои потребности.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Виртуальная файловая система
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]