Arkadaşlar herkese merhaba.
Şirketimizde kullandığımız bir program log.txt dosyasına çeşitli sürelerde veri yazıyor. Bu log.txt dosyasını açarak eklenen verileri görebiliyoruz.
Benim yapmak istediğim; program ve log.txt dosyası arasına girip bu dosyaya yazılan verinin kopyasını kendi programımdan görmek. Böyle bir sniff işlemi yapabilir miyim ? Bu konuda bilgisi tecrübesi olan tüm arkadaşların yardımına ihtiyacım var.
Şimdiden çok teşekkürler
Dosyaya Yazılan Veriyi Okuma
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 118
- Kayıt: 17 Ağu 2010 09:08
Re: Dosyaya Yazılan Veriyi Okuma
Ayrıca bir şeyi ekleyeyim;
Program çalışırken log.txt dosyasını kitliyor....
Program çalışırken log.txt dosyasını kitliyor....
Re: Dosyaya Yazılan Veriyi Okuma
Kod: Tümünü seç
TFileStream.Create(Dosyaİsmi, fmOpenRead or fmShareDenyNone);
There's no place like 127.0.0.1
-
- Üye
- Mesajlar: 118
- Kayıt: 17 Ağu 2010 09:08
Re: Dosyaya Yazılan Veriyi Okuma
Verdiğiniz kod ile bir kaç araştırma yaptım.
fakat burda bir soru daha ortaya çıkıyor. bu dosyaya veri yazıldığını nasıl anlayabilirim ? bu sayede her yeni yazılan veriyi kendi programıma çekmek istiyorum. şimdiden teşekkürler
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
var
slFile: TStrings;
stream: TStream;
begin
Memo1.Lines.Clear;
slFile := TStringList.Create;
try
stream := TFileStream.Create('c:\log.txt', fmOpenRead or fmShareDenyNone);
try
slFile.LoadFromStream(stream);
finally
stream.Free;
end;
memo1.Lines.Add(slfile.Text);
finally
slFile.Free;
end;
end;
fakat burda bir soru daha ortaya çıkıyor. bu dosyaya veri yazıldığını nasıl anlayabilirim ? bu sayede her yeni yazılan veriyi kendi programıma çekmek istiyorum. şimdiden teşekkürler
Re: Dosyaya Yazılan Veriyi Okuma
periyodik olarak stream.size'ı kontrol edebilirsiniz. En son baktığınızdakinden farklı ise yeni kayıt eklenmiş demektir. Yada dosya özelliklerinden dosyanın en son değiştirilme tarihini kontrol edebilirsiniz.(Bu forumda var, araştırabilirsiniz). Aklıma gelen bir başka seçenek; dosyanın bulunduğu klasörü sürekli kontrol eden directory watch tarzı birşey kullanman. (FindFirstChangeNotification) Bu sayede klasörde herhangi bir dosyada değişiklik olduğunda senin dosyanda mı değişiklik yapıldığını yakalayabilirsin.
There's no place like 127.0.0.1