Abbrevia componenti ile .Zip işlemi[Çözüldü]

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
onclick_lik
Üye
Mesajlar: 35
Kayıt: 04 Eki 2007 08:06

Abbrevia componenti ile .Zip işlemi[Çözüldü]

Mesaj gönderen onclick_lik »

S.a arkadaşlar Abbrevia componentini kullanarak bir klasörü zipleme işlemini yapmaktayım...Ama şöyle bir sorunum var..Mesela C:\Yedek gibi bulunan klasörü zipleyecem..Mesela Yedek klasörünün içinde

Kod: Tümünü seç

Yedek / Bilgi Klasörü
      / Resim Klasörü
      / Data Klasörü
      / 1.jpeg
      / 2.jpeg
      / 3.jpeg ....vs. gibi 
dosyalar ve alt klasörler bulunmakta..Yaptığım işlemde klasörün içinde bulunan dosyaları zipliyor ama alt klasörleri ve onların içinde bulunan dosyaları ziplemiyor...

Konu hakkında bilgisi olan arkadaşlardan allah şimdiden razı olsun..
En son onclick_lik tarafından 03 Oca 2008 12:26 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
ziplama işlemini nasıl yaptırdınız ki?
parametre olarak nasıl verdiğinize bağlı.
kodları bi görelim.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Bu bileşeni yıllar önce kullanmıştım ve kodlarımı şu anda inceledim. Kötü haber :cry: . Tüm alt klasörleri tarayarak halletmişim.

Kod: Tümünü seç

procedure KlasorTara(const KlasorAdi:String='');
 var i:Integer; Klasorler:TSearchRec;
 begin
   try
     i:=Liste.Items.Count;
	 Zip.AddFiles(YolTamamla(YolTamamla(Zip.BaseDirectory)+KlasorAdi)+'*.*',faAnyFile);
   finally
   end;
   if FindFirst(YolTamamla(YolTamamla(Zip.BaseDirectory)+KlasorAdi)+'*.*',faAnyFile,Klasorler)=0 then repeat
     if (Klasorler.Name<>'.') and (Klasorler.Name<>'..') and
      ((Klasorler.Attr and faDirectory)<>0) then
       KlasorTara(YolTamamla(KlasorAdi)+Klasorler.Name);
   until FindNext(Klasorler)<>0;
   FindClose(Klasorler);
 end;
Gibi bir kod kullanmışım. Sana zipmaster isminde bir bileşen önerebilirim ama hiç kullanmadım. Çok iyi bir bileşen olduğunu duymuştum.

viewtopic.php?t=18596
viewtopic.php?t=15393
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
onclick_lik
Üye
Mesajlar: 35
Kayıt: 04 Eki 2007 08:06

Mesaj gönderen onclick_lik »

s.a.
ziplama işlemini nasıl yaptırdınız ki?
parametre olarak nasıl verdiğinize bağlı.
kodları bi görelim.
A.s hocam en basitinden olarak yolu sabit bir yerden bir yere zipleme olarak aşağıdaki kodu kullanıyorum..

Kod: Tümünü seç

AbZipper1.BaseDirectory:='C:\Program\data\';        // ziplenecek klasör
AbZipper1.FileName:=D:\Yedek\+ DateToStr(date)+'.zip';      // günün tarihiyle ziple
AbZipper1.AddFiles('*.*',0);
AbZipper1.Save;
bu şekilde yaptığımda sadece gösterdiğim klasörün içindeki dosyaları zipliyor ama klasörün içinde bulunan alt klasörleri ziplemiyor..componentin içindeki bir cok örneği inceledim ama istediğim şey orda da yok..
Sana zipmaster isminde bir bileşen önerebilirim ama hiç kullanmadım. Çok iyi bir bileşen olduğunu duymuştum.
Dediğiniz componenti indirdim kurdum hocam ama Abbrevia kadar güzel gelmedi :roll: yinede yardımlarınız için teşekkür ederim.
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Mesaj gönderen ikutluay »

bir ara bende denemiştim bu componenti kendi içinde dediğinizide yapan bir örnek vardı.

help dosyasında sorecurse diye bir seçenek var. orayı inceleyin. store options özelliğine bakmanız gerekli.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
onclick_lik
Üye
Mesajlar: 35
Kayıt: 04 Eki 2007 08:06

Mesaj gönderen onclick_lik »

Eyvallah üstadım yardımların için..Options özelliklerinden

Kod: Tümünü seç

SoResurce:=True
yaptığımız zaman klasörleride ziplemekte :P
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Abooov!... Ben de boşuna kasmışım o zaman :twisted:
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Mesaj gönderen ikutluay »

sabanakman yazdı:Abooov!... Ben de boşuna kasmışım o zaman :twisted:
hekp dosyasına bakmanın faydaları babacan:)


bu arada sende adanalılık varmı ? çok güzel aboooo diyorsun:)
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
onclick_lik
Üye
Mesajlar: 35
Kayıt: 04 Eki 2007 08:06

Mesaj gönderen onclick_lik »

Abooov!... Ben de boşuna kasmışım o zaman
Arada olur bakalım üstad... :)


Valla üstad bi elimizde F1 de bi elimizde Powered By Google amca da :lol: siz sölemeden öncede bayağı bir options özelliklerini karıştırmıştım ama olmamıştı :shock:

Neyse artık işimiz çözüldü ya ona bakalım :wink: Teşekkürler
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

sabanakman yazdı:Bu bileşeni yıllar önce kullanmıştım...
Ben masumum. İnternetten mahrum, elimizin altında ne bir google, ne bir forum hiç bir şey yoktu. Yabancı dilde olmayınca körün döğüşü misali bu kadarını tutturduğuma şükrediyorum :) . Hem sen de bulamadıysan demekki dökümanı o kadar başarılı da sayılmaz.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Cevapla