Turbo power abbrevia : extraire le contenu d'un fichier zip

Description

Abbrevia est un outil composé de plusieurs composants permettant de compresser ou de décompresser des fichiers à partir de Delphi. Il supporte PKZIP 4, Microsoft CAB, TAR, gzip et la création des archives self-extracting. Abbrevia inclut des composants visuels, ce qui simplifient la programmation.

Vous allez maintenant créer votre premier programme en utilisant les composants TurboPower Abbrevia. L'exemple de programmation a pour but d' extraire le contenu d'un fichier ZIP.

On utilise pour cela les composants TAbZipView, TAbUnZipper et TAbVCLMeterLink.

Source / Exemple :


unit Unit1;

//Programme par Yoann
//http://delphipage.free.fr/

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, AbMeter, AbBrowse, AbBase,AbZBrows, AbUnzper, Grids, AbView,
  AbZView, FileCtrl;

type
  TForm1 = class(TForm)
    GroupBox1: TGroupBox;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    GroupBox2: TGroupBox;
    AbUnZipper1: TAbUnZipper;
    AbVCLMeterLink1: TAbVCLMeterLink;
    AbMeter1: TAbMeter;
    AbZipView1: TAbZipView;
    OpenDialog1: TOpenDialog;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Déclarations privées }
  public
    { Déclarations publiques }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then //Si l'utilisateur clique  sur le bouton "OK" alors
begin
Edit1.Text:=OpenDialog1.FileName; //Affiche dans le edit le chemin du fichier
//Affiche le contenu du fichier ZIP dans le composant AbZipView
AbZipView1.BeginUpdate; //Empêche la visionneuse de se rafraichir jusqu'à ce que "EndUpdate" soi appeller
AbUnZipper1.FileName:=Edit1.Text; //Chemin du fichier zip (par exemple "c:\\test.zip")
AbZipView1.EndUpdate;
end;
end;

procedure TForm1.Button2Click(Sender: TObject);
Var Rep: String;
begin
SelectDirectory('Choisir le répertoire de destination :', '',Rep); //Affiche une boîte de dialogue permettant à l'utilisateur de choisir un nom de répertoire
Edit2.Text:=Rep; //Affiche dans le edit le repertoire choisit
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
if (Edit1.Text<>'') and (Edit2.Text<>'') then //Vérifie que les deux edit ont été remplis
begin
Screen.Cursor:=crHourGlass; //Curseur sablier
AbUnZipper1.BaseDirectory:=Edit2.Text; //Répertoire de desintation des fichiers contenus dans le fichier ZIP (le répertoire doit exister)
AbUnZipper1.ExtractFiles('*.*'); //Extrait tous les fichiers
Screen.Cursor:=crDefault; //Curseur sablier
end;
end;

end.

Conclusion :


Plus d'information sur : http://delphipage.free.fr/

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.