Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Klasörde Fdb Uzandılı Dosya Var mı, Yok mu?
#1
Arkadaşlar merhaba yeni bir konuyla tekrardan karşınızdayım hepnizin affına sığınıyorum. Hakkınızı helal edin acemilik böyle birşey. Neyse lafı fazla uzatmadan konuya geçeyim önceki günlerdede bahsetmiş olduğum bir projem vardı giriş ekranı diye son bir adım kaldı şimdi ben bu formun onshow olayına yazacağım bir kodla açılışta veritabanı dosyasının kayıtlı olduğu klasörü kontrol edip eğerki veritabanı dosyası varsa program birşey yapmasın ama yoksa 'veritabanı dosyası bulunamadı şimdi oluşturmak istemisiniz' mesajı ile kullanıcıyı veri tabanı 
oluşturma sayafasına yönlendirsin istiyorum. aslında kodum mevcut ama sıkıntı şu;

ExtractFilePath(Application.ExeName) + 'DATA\'

ben bu kodla  programımı her bilgisayarda istersem flash diskte yol göstermeden çalıştırabiliyorum.

şöyle bir kod buldum ve kendime uyarladım çalıştı fakat sürekli bilgisayar değiştiğinde yada dosya değiştiğinde yol göstermem gerekiyor.Ben bunu üstte yazmış olduğum kod gibi yol göstermeden çalışmasını nasıl sağlıyabilirim.



Procedure TForm1.Button1Click(Sender; Object);

var

begin

If FileExists(‘C:\WinNt\Nihat.txt’) Then // Dosya varsa

Caption := ‘Dosya var’

else

Caption := ‘Dosya Yok’;

end;


yardımlarınız için teşekkür ediyorum. İyi çalışmalar Kolay gelsin.
Cevapla
#2
(05-10-2020, Saat: 17:40)bnyamin86 Adlı Kullanıcıdan Alıntı: Arkadaşlar merhaba yeni bir konuyla tekrardan karşınızdayım hepnizin affına sığınıyorum. Hakkınızı helal edin acemilik böyle birşey. Neyse lafı fazla uzatmadan konuya geçeyim önceki günlerdede bahsetmiş olduğum bir projem vardı giriş ekranı diye son bir adım kaldı şimdi ben bu formun onshow olayına yazacağım bir kodla açılışta veritabanı dosyasının kayıtlı olduğu klasörü kontrol edip eğerki veritabanı dosyası varsa program birşey yapmasın ama yoksa 'veritabanı dosyası bulunamadı şimdi oluşturmak istemisiniz' mesajı ile kullanıcıyı veri tabanı 
oluşturma sayafasına yönlendirsin istiyorum. aslında kodum mevcut ama sıkıntı şu;

ExtractFilePath(Application.ExeName) + 'DATA\'

ben bu kodla  programımı her bilgisayarda istersem flash diskte yol göstermeden çalıştırabiliyorum.

şöyle bir kod buldum ve kendime uyarladım çalıştı fakat sürekli bilgisayar değiştiğinde yada dosya değiştiğinde yol göstermem gerekiyor.Ben bunu üstte yazmış olduğum kod gibi yol göstermeden çalışmasını nasıl sağlıyabilirim.



Procedure TForm1.Button1Click(Sender; Object);

var

begin

If FileExists(ExtractFilePath(Application.ExeName) + 'DATA\Nihat.txt') Then // Dosya varsa   exe nin bulunduğu klasördeki\data\klasöründeki dosyayı kontrol eder. 

Caption := ‘Dosya var’

else

Caption := ‘Dosya Yok’;

end;


yardımlarınız için teşekkür ediyorum. İyi çalışmalar Kolay gelsin.

Bence cevap sorunun içinde


Procedure TForm1.Button1Click(Sender; Object);

begin

If FileExists(ExtractFilePath(Application.ExeName) + 'DATA\Nihat.txt') Then // Dosya varsa   exe nin bulunduğu klasördeki\data\klasöründeki dosyayı kontrol eder. 

Caption := ‘Dosya var’

else

Caption := ‘Dosya Yok’;

end;
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
Cevapla
#3
belirtmeyi unutmuşum veritabanı her zaman nihat isminde olmayacak kullanıcının koyacağı herhangi bir isim olacak.
Cevapla
#4
(05-10-2020, Saat: 18:05)bnyamin86 Adlı Kullanıcıdan Alıntı: belirtmeyi unutmuşum veritabanı her zaman nihat isminde olmayacak kullanıcının koyacağı herhangi bir isim olacak.

yarın yardımcı olalım
yarın bir  combobox içine exe nin çalıştığı yerdeki istediğin klasörün için listeleyen kod ile işiniz olur
sanki 4-5 gün içinde benzer bir soru yanıtlandı diye hatırlıyorum.
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
Cevapla
#5
(05-10-2020, Saat: 18:04)cinarbil Adlı Kullanıcıdan Alıntı:
(05-10-2020, Saat: 17:40)bnyamin86 Adlı Kullanıcıdan Alıntı: Arkadaşlar merhaba yeni bir konuyla tekrardan karşınızdayım hepnizin affına sığınıyorum. Hakkınızı helal edin acemilik böyle birşey. Neyse lafı fazla uzatmadan konuya geçeyim önceki günlerdede bahsetmiş olduğum bir projem vardı giriş ekranı diye son bir adım kaldı şimdi ben bu formun onshow olayına yazacağım bir kodla açılışta veritabanı dosyasının kayıtlı olduğu klasörü kontrol edip eğerki veritabanı dosyası varsa program birşey yapmasın ama yoksa 'veritabanı dosyası bulunamadı şimdi oluşturmak istemisiniz' mesajı ile kullanıcıyı veri tabanı 
oluşturma sayafasına yönlendirsin istiyorum. aslında kodum mevcut ama sıkıntı şu;

ExtractFilePath(Application.ExeName) + 'DATA\'

ben bu kodla  programımı her bilgisayarda istersem flash diskte yol göstermeden çalıştırabiliyorum.

şöyle bir kod buldum ve kendime uyarladım çalıştı fakat sürekli bilgisayar değiştiğinde yada dosya değiştiğinde yol göstermem gerekiyor.Ben bunu üstte yazmış olduğum kod gibi yol göstermeden çalışmasını nasıl sağlıyabilirim.



Procedure TForm1.Button1Click(Sender; Object);

var

begin

If FileExists(ExtractFilePath(Application.ExeName) + 'DATA\Nihat.txt') Then // Dosya varsa   exe nin bulunduğu klasördeki\data\klasöründeki dosyayı kontrol eder. 

Caption := ‘Dosya var’

else

Caption := ‘Dosya Yok’;

end;


yardımlarınız için teşekkür ediyorum. İyi çalışmalar Kolay gelsin.

Bence cevap sorunun içinde


Procedure TForm1.Button1Click(Sender; Object);

begin

If FileExists(ExtractFilePath(Application.ExeName) + 'DATA\Nihat.txt') Then // Dosya varsa   exe nin bulunduğu klasördeki\data\klasöründeki dosyayı kontrol eder. 

Caption := ‘Dosya var’

else

Caption := ‘Dosya Yok’;

end;


database e bağlanmak için zaten ismini bir yer de alman lazım ben ini kullanıyorum 
DataAdi := 'abc.fdb'; // tuttuğun yerden database bağlanmadan önce kontrol edersin 
If FileExists(ExtractFilePath(Application.ExeName) + 'DATA\'+DataAdi) Then // Dosya varsa   exe nin bulunduğu klasördeki\data\klasöründeki dosyayı kontrol eder. 
Cevapla
#6
bu soruya ekteki linkte cevap verilmiş 
https://www.delphican.com/showthread.php?tid=5179


procedure TForm2.Button1Click(Sender: TObject);

var
sr:TSearchRec;
begin
cCombobox1.Clear;
FindFirst('C:\Cinar\Sundoor\data\*.*',faAnyFile,sr); //C:\Cinar\Sundoor\data  dosyaların durduğu dizin  fbd firebird uzantısı sendeki farklı ise değiştir

repeat
if (sr.Name<>'.') and (sr.Name<>'..') then
  combobox1.items.Add(ExtractFileName (sr.Name)); // combobox dosya adını ekle
until FindNext(sr)<>0;

FindClose(sr);
end;

yukarıdaki kodlar dizindeki firebird database isimlerini combobox alır 
sende onclick olayında database bağlanırsın ezbere yazdım deneyemedim ama genel fikir verir

Test edildi. Tamam
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
Cevapla
#7
Sayın çınarbil hocam vermiş olduğunuz cevap da benim diğer konu başlığım için verilmiş bir cevaptı ama yinede zahmetiniz ve emeğiniz için teşekkür ediyorum. Soruyu değiştiriyorum şimdi exenin bulunduğu kalsördeki data klasörü boş mu değilmi içindeki dosya ne olursa olsun uzantısıda farketmez boş ise boş dolu ise dolu bana bunu döndürsün yeter işimi görür.
kusura bakmayın anlatamadıysam affınıza sığınıyorum. Kolay gelsin iyi çalışmalar.
Cevapla
#8
(06-10-2020, Saat: 09:26)bnyamin86 Adlı Kullanıcıdan Alıntı: Sayın çınarbil hocam vermiş olduğunuz cevap da benim diğer konu başlığım için verilmiş bir cevaptı ama yinede zahmetiniz ve emeğiniz için teşekkür ediyorum. Soruyu değiştiriyorum şimdi exenin bulunduğu kalsördeki data klasörü boş mu değilmi içindeki dosya ne olursa olsun uzantısıda farketmez boş ise boş dolu ise dolu bana bunu döndürsün yeter işimi görür.
kusura bakmayın anlatamadıysam affınıza sığınıyorum. Kolay gelsin iyi çalışmalar.

System.IOUtils.TDirectory.IsEmpty(BirDizin)
DelphiCan'dır!
Cevapla
#9
(06-10-2020, Saat: 09:28)Fesih ARSLAN Adlı Kullanıcıdan Alıntı:
(06-10-2020, Saat: 09:26)bnyamin86 Adlı Kullanıcıdan Alıntı: Sayın çınarbil hocam vermiş olduğunuz cevap da benim diğer konu başlığım için verilmiş bir cevaptı ama yinede zahmetiniz ve emeğiniz için teşekkür ediyorum. Soruyu değiştiriyorum şimdi exenin bulunduğu kalsördeki data klasörü boş mu değilmi içindeki dosya ne olursa olsun uzantısıda farketmez boş ise boş dolu ise dolu bana bunu döndürsün yeter işimi görür.
kusura bakmayın anlatamadıysam affınıza sığınıyorum. Kolay gelsin iyi çalışmalar.

System.IOUtils.TDirectory.IsEmpty(BirDizin)

Sayın Fesih hocam cevabınız için teşekkür ediyorum ama verdiğiniz cevabı nasıl kullanacağımı bilemedim. Kusura bakmayın acemiyim SmileSmile
Cevapla
#10
(06-10-2020, Saat: 09:34)bnyamin86 Adlı Kullanıcıdan Alıntı:
(06-10-2020, Saat: 09:28)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: System.IOUtils.TDirectory.IsEmpty(BirDizin)

Sayın Fesih hocam cevabınız için teşekkür ediyorum ama verdiğiniz cevabı nasıl kullanacağımı bilemedim. Kusura bakmayın acemiyim SmileSmile

Başına if sonuna then ekleyin.
DelphiCan'dır!
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Projeye dosya olarak eklenmiş dosyanın içeriğini okumak yhackup 9 1.752 18-04-2025, Saat: 21:39
Son Yorum: bakyuz
  Windows Explorer dan delphi formuna dosya Drag&Drop işlemi örneği adelphiforumz 1 572 23-01-2025, Saat: 15:16
Son Yorum: yhackup
  idftp dosya kontrolü ercanskose 2 791 30-10-2024, Saat: 16:15
Son Yorum: ercanskose
Lightbulb Delphi 7zip Password lü Dosya Sıkıştırma ve Açma + Bonus RAR5 Desteği frmman 6 1.862 16-03-2024, Saat: 17:55
Son Yorum: delphi.developer
  Dosya isimlendirme bydelphi 6 1.632 16-01-2024, Saat: 16:38
Son Yorum: mustafaozpinar



Konuyu Okuyanlar: 1 Ziyaretçi