Показать сообщение отдельно
  #16  
Старый 25.06.2012, 00:04
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Как пример:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  I          : Integer;
  MemStream  : TMemoryStream;
  jpg        : TJpegImage;
begin
  MemStream := TMemoryStream.Create;
  try
    with CreateInArchive(CLSID_CFormat7z) do
    begin
      OpenFile('test.7z');
      for I := 0 to NumberOfItems - 1 do
        if not ItemIsFolder[i] then
        begin
          MemStream.Clear;
          ExtractItem(I, MemStream, False);
          MemStream.Position := 0;
          case I of
            0 :
            begin
              jpg := TJPEGImage.Create;
              try
                jpg.LoadFromStream(MemStream);
                Image1.Picture.Assign(jpg);
              finally
                jpg.Free;
              end;
            end;
            1 : Memo1.Lines.LoadFromStream(MemStream);
          end;
        end;
    end;
  finally
    MemStream.Free;
  end;
end;
правильнее проверить имя, затем по нему выполнять действие.
P.S. Приложенный Readme, в топку.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием