Criando Extrator
Página 1 de 1
Criando Extrator
Primeiro baixe o componente DFUnRAR no seguinte Link
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Scan
descomprima o arquivo em um diretório qualquer
vá até o diretório "src" e abra o arquivo "DFUnRAR.pas"
vá até Component > Install Compoenent
Redimensionado em 44% (1024 x 768) - Clique para ampliar[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Clique na aba "Into New Package"
Redimensionado em 85% (534 x 262) - Clique para ampliar[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Clique em OK e depois responda "Yes" na mensagem que irá aparecer
Pronto! O Componente será instalado e a aba "DFrisch" aparecerá no Delphi
Crie um novo projeto no Delphi
Adicione 3 Label, 2 Button,2 SpeedButton, 1 OpenDialog, 2 Edit, um Gauge que fica na aba "Samples"
e por fim o componente DFUnRAR (na aba DFrisch)
Agora mude algumas propriedades....
Label1.Caption = "Arquivo:"
Label2.Caption = "Extrair para:"
Label3.Caption = "Progresso:"
Button1.Caption = "Extrair"
Button2.Caption = "Cancelar Extração"
SpeedButton1.Caption = "..."
SpeedButton2.Caption = "..."
SpeedButton1.Flat = "True"
SpeedButton2.Flat = "True"
OpenDialog1.Filer = "Arquivos RAR|*.rar"
Adicione a unit "untUnRAR" e a unit QDialogs que tem uma função util para nós
( tanto tempo sem mexer com delphi que não lembro + como escolher diretórios manualmente Imagem
Declare na seção Public do Form1 as variáveis
Quote
IsExtracting: Boolean;
Abort: Boolean;
no evento OnCreate do Form1 adicione:
Quoteprocedure TForm1.FormCreate(Sender: TObject);
begin
LoadRarLibrary();
end;
e no envento OnDestroy:
Quoteprocedure TForm1.FormCreate(Sender: TObject);
begin
LoadRarLibrary();
end;
no evento onclick do Button1 adicione o seguite código:
QuoteButton1.Enabled:=False;
Button2.Enabled:=True;
SpeedButton1.Enabled:=False;
SpeedButton2.Enabled:=False;
Gauge1.Progress:=Gauge1.MinValue;
with Edit2 do
if Text <> '' then DFUnRAR1.Directory:=Text;
DFUnRar1.FileName := Edit1.Text;
if not FileExists(DFUnRar1.FileName) then begin
ShowMessage('Este arquivo não existe!'+#13#10+
'Você deve digitar o nome de um arquivo');
Exit;
end
else begin
isExtracting:=True;
DFUnRar1.Extract;
isExtracting:=False;
if not Abort then ShowMessage('Extração Competa!');
Button1.Enabled:=True;
Button2.Enabled:=False;
SpeedButton1.Enabled:=True;
SpeedButton2.Enabled:=True;
end;
no evento onclick do Button2 adicione:
QuoteDFUnRAR1.StopProcessing:=True;
Abort:=True;
ShowMessage('Extração cancelada pelo usuário!');
Gauge1.Progress:=Gauge1.MinValue;
no envento onclick do SpeedButton1 adicione:
Quoteif OpenDialog1.Execute then
Edit1.Text := OpenDialog1.FileName;
e no evento onclick do SpeedButton2 adicione:
Quotevar
dir: widestring;
begin
// função da unit QDialogs seleciona um diretório
if SelectDirectory('Selecione um diretório','',dir ) then
Edit2.Text:=dir+'';
end;
mude a propriedade CanProgress do DFUnRAR1 para True e adicione o seguinte codigo ao evento onprogress
do componente DFUnRAR1:
Quoteif (FileCount > 0) and (isExtracting) then
begin
Gauge1.Progress:=FilesProcessed * 100 div FileCount;
Application.ProcessMessages;
end;
Copie a dll "UnRAR.dll" para o diretório do seu aplicativo!!
se a dll não estiver lá o programa não funciona!!!
Pronto! Agora seu programa já pode extrair arquivos RAR
por enquanto este programa extrai todos os arquivo comprimidos dentro do RAR
mas com alguns melhoramentos ele pode extrair arquivos individuais
PS: não comentei o código aqui porque ia ficar uma confusão.
Credito: au Criador
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Scan
descomprima o arquivo em um diretório qualquer
vá até o diretório "src" e abra o arquivo "DFUnRAR.pas"
vá até Component > Install Compoenent
Redimensionado em 44% (1024 x 768) - Clique para ampliar[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Clique na aba "Into New Package"
Redimensionado em 85% (534 x 262) - Clique para ampliar[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Clique em OK e depois responda "Yes" na mensagem que irá aparecer
Pronto! O Componente será instalado e a aba "DFrisch" aparecerá no Delphi
Crie um novo projeto no Delphi
Adicione 3 Label, 2 Button,2 SpeedButton, 1 OpenDialog, 2 Edit, um Gauge que fica na aba "Samples"
e por fim o componente DFUnRAR (na aba DFrisch)
Agora mude algumas propriedades....
Label1.Caption = "Arquivo:"
Label2.Caption = "Extrair para:"
Label3.Caption = "Progresso:"
Button1.Caption = "Extrair"
Button2.Caption = "Cancelar Extração"
SpeedButton1.Caption = "..."
SpeedButton2.Caption = "..."
SpeedButton1.Flat = "True"
SpeedButton2.Flat = "True"
OpenDialog1.Filer = "Arquivos RAR|*.rar"
Adicione a unit "untUnRAR" e a unit QDialogs que tem uma função util para nós
( tanto tempo sem mexer com delphi que não lembro + como escolher diretórios manualmente Imagem
Declare na seção Public do Form1 as variáveis
Quote
IsExtracting: Boolean;
Abort: Boolean;
no evento OnCreate do Form1 adicione:
Quoteprocedure TForm1.FormCreate(Sender: TObject);
begin
LoadRarLibrary();
end;
e no envento OnDestroy:
Quoteprocedure TForm1.FormCreate(Sender: TObject);
begin
LoadRarLibrary();
end;
no evento onclick do Button1 adicione o seguite código:
QuoteButton1.Enabled:=False;
Button2.Enabled:=True;
SpeedButton1.Enabled:=False;
SpeedButton2.Enabled:=False;
Gauge1.Progress:=Gauge1.MinValue;
with Edit2 do
if Text <> '' then DFUnRAR1.Directory:=Text;
DFUnRar1.FileName := Edit1.Text;
if not FileExists(DFUnRar1.FileName) then begin
ShowMessage('Este arquivo não existe!'+#13#10+
'Você deve digitar o nome de um arquivo');
Exit;
end
else begin
isExtracting:=True;
DFUnRar1.Extract;
isExtracting:=False;
if not Abort then ShowMessage('Extração Competa!');
Button1.Enabled:=True;
Button2.Enabled:=False;
SpeedButton1.Enabled:=True;
SpeedButton2.Enabled:=True;
end;
no evento onclick do Button2 adicione:
QuoteDFUnRAR1.StopProcessing:=True;
Abort:=True;
ShowMessage('Extração cancelada pelo usuário!');
Gauge1.Progress:=Gauge1.MinValue;
no envento onclick do SpeedButton1 adicione:
Quoteif OpenDialog1.Execute then
Edit1.Text := OpenDialog1.FileName;
e no evento onclick do SpeedButton2 adicione:
Quotevar
dir: widestring;
begin
// função da unit QDialogs seleciona um diretório
if SelectDirectory('Selecione um diretório','',dir ) then
Edit2.Text:=dir+'';
end;
mude a propriedade CanProgress do DFUnRAR1 para True e adicione o seguinte codigo ao evento onprogress
do componente DFUnRAR1:
Quoteif (FileCount > 0) and (isExtracting) then
begin
Gauge1.Progress:=FilesProcessed * 100 div FileCount;
Application.ProcessMessages;
end;
Copie a dll "UnRAR.dll" para o diretório do seu aplicativo!!
se a dll não estiver lá o programa não funciona!!!
Pronto! Agora seu programa já pode extrair arquivos RAR
por enquanto este programa extrai todos os arquivo comprimidos dentro do RAR
mas com alguns melhoramentos ele pode extrair arquivos individuais
PS: não comentei o código aqui porque ia ficar uma confusão.
Credito: au Criador
Convidad- Convidado
Tópicos semelhantes
» Extrator e Compactador de arquivos .kom
» Criando um Keylogger.
» Criando uma Calculadora
» Criando Relogio
» Criando Flooder
» Criando um Keylogger.
» Criando uma Calculadora
» Criando Relogio
» Criando Flooder
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
Qui Abr 11 2013, 08:25 por juniloko
» Mu Editavel
Sáb Abr 06 2013, 16:57 por Klobis
» pangya life
Qua Abr 03 2013, 23:25 por Binbin01
» Vendas/Trocas De Times
Qua Abr 03 2013, 18:43 por Klobis
» Trocas Media 100
Qua Abr 03 2013, 18:39 por Klobis
» Trocas Media 80
Qua Abr 03 2013, 18:36 por Klobis
» Trocas Media 60
Qua Abr 03 2013, 18:34 por Klobis
» Trocas Media 40
Qua Abr 03 2013, 18:33 por Klobis
» Trocas Media 20
Qua Abr 03 2013, 18:31 por Klobis
» Atualizações da Staff
Seg Abr 01 2013, 18:42 por Klobis