ZipMaster

Delphi

11/12/2007

Ola Pessoal,

Tenho uma aplicação que esta utilizando o Componente [b:08b9fb96c9]ZipMaster[/b:08b9fb96c9] para zipar. Esta funcionando corretamente, mas tem um porém...Sempre preciso fechar minha aplicação para [b:08b9fb96c9]conseguir excluir [/b:08b9fb96c9]o arquivo .zip criado...

Alguém sabe como posso fazer para poder [b:08b9fb96c9]excluir o arquivo .zip [/b:08b9fb96c9]que criei e excluir o mesmo ainda em tempo de execução sem ter que sair da aplicação?
[i:08b9fb96c9]Obs: Tentei utilizar ´DeleteFile´ porém deu erro, pois o arquivo ainda estava sendo usado....[/i:08b9fb96c9]
sem alguém puder ajudar ta valendo, ok


Fernando Piccini

Fernando Piccini

Curtidas 0

Respostas

Flyskin

Flyskin

11/12/2007

você está criando o componente dentro de um bloco try...finally..end?
para que você consiga deletar o arquivo, vai precisar destruir o objeto antes então após o finally, você pode deletar o arquivo sem problemas...


GOSTEI 0
Fernando Piccini

Fernando Piccini

11/12/2007

O componente não é criado em tempo de execução, o mesmo esta posicionado em um Form...Para a compactacao dos arquivos e feito o seguinte processo:

try
Screen.Cursor := crHourGlass;
ZipMaster1.ZipFileName := ´C:\Temp\.zip´;
Query.Open;
Query.First;
while not Query.Eof do
begin
ZipMaster1.FSpecArgs.Add(Query.FieldByName(´nm_arquivo´).AsString);
Query.Next;
end;
ZipMaster1.Add;
Screen.Cursor := crDefault;
except
Messagedlg(Exception(ExceptObject).Message, MtInformation, [MbOk], 0);
end;

Ele esta zipando corretamente e depois envia para um e-mail o arquivo, porém preciso excluir o arquivo depois de zipado...

vlw


GOSTEI 0
Flyskin

Flyskin

11/12/2007

e você está tentando excluir o arquivo com o form aberto? pois se ele é um componente visual, está sendo criado com o form e até que feche o form, ele continua carregado na memória.
experimente fechar o form e depois excluir o arquivo.


GOSTEI 0
Fernando Piccini

Fernando Piccini

11/12/2007

o que eu nao quero eh ter q sair da minha aplicacao, ou seja, nao quero ter q sair do form para excluir o arquivo...Eu tenho um TButton onde no mesmo gostaria de disponibilizar um evento que venha excluir o arquivo...sem ter q liberar componente nenhum...

Sera q o componente ZipMaster depois de zipar nao disponibiliza uma rotina para fechar o arquivo ou algo do genero?

flw


GOSTEI 0
Flyskin

Flyskin

11/12/2007

então a solução para você é criar o componente em tempo de execução e tratar a sua liberação da memória sem fechar o form... eu geralmente utilizo esta opção pois ocupa menos recursos e tenho o controle na mão...


GOSTEI 0
POSTAR