Renanbg 1 Denunciar post Postado Maio 13, 2009 Amigos, estou testando alguns componentes de compactação. este TtsqZip me pareceu bem atrativo então junto com o componente vem o exemplo de uso e resolvi usar um que mostra o progresso da compactação procedure TForm1.tsqZip1Print(Buffer: PChar; Size: Cardinal; var PResult: Integer); begin memo1.Lines.Add(Buffer); Application.ProcessMessages; end; procedure TForm1.tsqZip1Service(Buffer: PChar; Size: Cardinal; var PResult: Integer); begin memo1.Lines.Add('--->' + Buffer); ProgressBar1.Position := ProgressBar1.Position + 1; Application.ProcessMessages; if FAborted then begin //Abort button was pressed, terminate the zip process by setting PResult to 1 PResult := 1; end; end; e no botão tsqzip1.ZipFileName := 'c:\test_tsqzip.zip'; tsqzip1.FilesToZip.Clear; tsqzip1.FilesToZip.Add('c:\mydir\file1.exe'); tsqzip1.FilesToZip.Add('c:\mydir\file2.txt'); tsqzip1.Execute; //compress file O problema é que ele preenche a barra de progresso só até a metade. ja reduzi o tamanho dela, mas ele ainda preenche só a metade alguem usa esse componente e sabe o pq disso? ou recomenda um outro Compartilhar este post Link para o post Compartilhar em outros sites
port3r 0 Denunciar post Postado Maio 13, 2009 Não sei como esse componente funciona. Mas para preencher um Progress Bar é necessário fazer um laço, para que ele possa ir incrementando de acordo com os resultados encontrados. Olha só este exemplo de Progress Bar, bem simples: Progress Bar Abraços. Compartilhar este post Link para o post Compartilhar em outros sites
Renanbg 1 Denunciar post Postado Maio 13, 2009 Pois é, o componente não oferece muito nesse sentido. Você conheçe algum outro metodo ou componente que posso usar para compactar? atualmente uso o winzip, mas quero abortar pq senao todas maquinas devem te-lo instalado Compartilhar este post Link para o post Compartilhar em outros sites