![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Здраствуйте. Если кто работал с компонентом ZipForge может знаете как мне из архива извлеч картинку сразу в программу,а то сейчас пирходиться извлекать на жесткий диск,считывать с диска в программу и файл удалять,
там вроде через поток данных както надо делать? я с ними не работал еще может кто научит? гуглиньё чтото не помогло. только не пишите плиз юзать другой архиватор,у меня уже пол программы с этим написано Последний раз редактировалось Snake22, 28.09.2011 в 23:59. |
|
#2
|
||||
|
||||
|
Я не пользуюсь этим компонентом, но я не поленился зайти на официальный сайт производителя и посмотреть примеры на Дельфи, которые там выложены. Может и Вам стоит это сделать, а уж потом, если не получится, задать вопрос?
|
|
#3
|
|||
|
|||
|
я справку читал.я написал что с потоками данных не работал,пробовал как в примере ExtractTo Stream делать но у меня всячески на эти стреамы ругается.
|
|
#4
|
||||
|
||||
|
Ну так выложи пример, как делал.
|
|
#5
|
|||
|
|||
|
Цитата:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var ImgBuf:TStream;
begin
ImgBuf:=TStream.Create;
with Archiver do
begin
FileName := 'arc.zip';
OpenArchive(fmOpenRead);
Archiver.ExtractToStream('1.jpg',ImgBuf);
CloseArchive;
end;
end;![]() |
|
#6
|
|||
|
|||
|
Такс кое что получилось.
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
ImgBuf:TMemoryStream;
Bm:TBitmap;
begin
ImgBuf:=TMemoryStream.Create;
bm:=TBitmap.Create;
with Archiver do
begin
FileName := 'arc.zip';
OpenArchive(fmOpenRead);
Archiver.ExtractToStream('1.bmp',ImgBuf);
CloseArchive;
end;
ImgBuf.Position:=0;
Bm.LoadFromStream(ImgBuf);
Bm.SaveToFile('2.bmp');
end;а теперь надо чтоб из архива загружался JPEG файл и появлялся в TImag'e |
|
#7
|
|||
|
|||
|
кажется так надо?
Код:
var ... JPG:TJPEGImage; .... begin JPG:=TJPEGImage.Create; ... ImgBuf.Position:=0; JPG.LoadFromStream(ImgBuf); |