Criando um extrator
:: Programação :: Delphi :: Delphi Tutoriais.
Página 1 de 1
Criando um extrator
Primeiro baixe o componente DFUnRAR no seguinte Link
[url="http://www.rarlab.com/rar/TDFUnRar.zip"]Download DFUnRAR[/url]
[url="http://www.virustotal.com/file-scan/report.html?id=64a75112ca66a3656f229addf8ff50e4a442a65a606523520a88f15bc3443b9d-1266496715"]Scan[/url]
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
Clique na aba "Into New Package"
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
no evento OnCreate do Form1 adicione:
e no envento OnDestroy:
no evento onclick do Button1 adicione o seguite código:
no evento onclick do Button2 adicione:
no envento onclick do SpeedButton1 adicione:
e no evento onclick do SpeedButton2 adicione:
mude a propriedade CanProgress do DFUnRAR1 para True e adicione o seguinte codigo ao evento onprogress
do componente DFUnRAR1:
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 Criado
[url="http://www.rarlab.com/rar/TDFUnRar.zip"]Download DFUnRAR[/url]
[url="http://www.virustotal.com/file-scan/report.html?id=64a75112ca66a3656f229addf8ff50e4a442a65a606523520a88f15bc3443b9d-1266496715"]Scan[/url]
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
Clique na aba "Into New Package"
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
IsExtracting: Boolean;
Abort: Boolean;
no evento OnCreate do Form1 adicione:
procedure TForm1.FormCreate(Sender: TObject);
begin
LoadRarLibrary();
end;
e no envento OnDestroy:
procedure TForm1.FormCreate(Sender: TObject);
begin
LoadRarLibrary();
end;
no evento onclick do Button1 adicione o seguite código:
Button1.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:
DFUnRAR1.StopProcessing:=True;
Abort:=True;
ShowMessage('Extração cancelada pelo usuário!');
Gauge1.Progress:=Gauge1.MinValue;
no envento onclick do SpeedButton1 adicione:
if OpenDialog1.Execute then
Edit1.Text := OpenDialog1.FileName;
e no evento onclick do SpeedButton2 adicione:
var
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:
if (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 Criado
Mr.Positive- Membro
- Mensagens : 40
Agradecimentos : 0
Data de inscrição : 12/01/2011
Idade : 29
Localização : Recreio
Humor : Feliz !
Tópicos semelhantes
» criando DLL hack pra GTA
» Criando Splash
» Criando uma Calculadora
» Criando Gerador de CPF
» [Tutorial] Criando um Sistema
» Criando Splash
» Criando uma Calculadora
» Criando Gerador de CPF
» [Tutorial] Criando um Sistema
:: Programação :: Delphi :: Delphi Tutoriais.
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos