Текущий архив: 2007.05.27;
Скачать: CL | DM;
ВнизЧтение самого себя Найти похожие ветки
← →
Ken9 (2007-05-08 10:36) [0]Здравствуйте, уважаемые Мастера. Мне надо сделать прогу-архиватор которая архивировала бы на подобие sfx-архивов. Я делаю следующее: делаю заранее прогу-распаковщик, затем специальной уже другой прогой архивирую файлы и добавляю их к копии распаковщика. Суть вопроса следующая: как прочитать распаковщику самого себя. Он(распаковщик) каждый раз выдаёт ошибку на операторе открытия, типо данный файл уже занят другим процессом. Что можно сделать в данной ситуации?
← →
Reindeer Moss Eater © (2007-05-08 10:44) [1]Открывать файл с нужными флагами
← →
ZeroDivide © (2007-05-08 10:49) [2]
> Суть вопроса следующая: как прочитать распаковщику самого
> себя
Другой прогой архивирую файлы и добавляю их к копии распаковщика
1. Так он же в памяти уже, зачем файл читать? Он уже прочитан, работай с памятью.
2. Хотя это уже и не нужно, но: При открытии файла, в виде параметра функции, можно и нужно указать зачем он тебе нужен read или write или readwrite. Если файл уже открыт для записи, то ОС не даст тебе в него писать, но даст читать. ОС не дает писать в загруженные exe-файлы.
← →
Ken9 (2007-05-08 14:24) [3]data:=TFileStream.Create(Application.ExeName,fmOpenRead);-на этом операторе вылетает с ошибкой.
//Открывать файл с нужными флагам
а я что делаю?)
//1. Так он же в памяти уже, зачем файл читать? Он уже прочитан, работай с //памятью.
//
//2. Хотя это уже и не нужно, но: При открытии файла, в виде параметра //функции, можно и нужно указать зачем он тебе нужен read или write или //readwrite. Если файл уже открыт для записи, то ОС не даст тебе в него //писать, но даст читать. ОС не дает писать в загруженные exe-файлы.
1. Чес. говоря не знаю как работать с памятью в данном случае. Можешь дать ссылку?
2. я вроде как и открываю только на чтение, а он гад выдаёт ошибку что файл занят др процессом......
← →
Плохиш © (2007-05-08 15:09) [4]
> data:=TFileStream.Create(Application.ExeName,fmOpenRead or fmShareDenyWrite);
← →
Плохиш © (2007-05-08 15:11) [5]fmShareDenyNone
Страницы: 1 вся ветка
Текущий архив: 2007.05.27;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.047 c