Delphi Projem İçin Yardım ( Lütfen Anlayan Baksın )
-
Bir projem var eğer biterse güzel olacak. İşlevselliği ve ne işe yaradığı hakkında bilgi vermek istemiyorum ki bitince süpriz olsun. Fakat bir yerde takıldım.
kod:
timer nesnesi altında
var DOM : variant;
begin
webbrowser2.Navigate('http://www.server.com/guncelleme.txt');
DOM := WebBrowser2.Document;
if Webbrowser2.LocationURL <> '' then begin
label1.Caption := DOM.Body.OuterText;
webbrowser2.Refresh2;
end;
webbrowser3.Navigate('http://www.server.com/guncelleme.txt');
DOM := WebBrowser3.Document;
if Webbrowser3.LocationURL <> '' then begin
label6.Caption := DOM.Body.OuterText;
webbrowser3.Refresh2;
endend;
yukarıdaki kodda sunucu üstündeki guncelleme.txt dosyasından veri çekmesi sağlanıyor ve çekilen veri label6 ya aktarılıyor. İlk olarak güncelleme numarasını alıyor fakat ben guncelle.txt'in içeriğini değiştirdiğim zaman yenileme yapmıyor hala eski numarayı çekiyor. Açıp kapatıldığı vakit güncel içeriği alıyor fakat açıp kapatmadan alması lazım anlık yani. Bunu aşmanın bir yolu varmı yada başka bir alternatif.
-
yenile yerine tekrar aynı sayfaya bağlamayı denesen
uzun zamandır delphiye bakmadım hatırlamıyorum şimdi :S
-
ben de delphi pek bilmem ama şöyle birşey de yapabilrisin. guncelle.txt yi değiştirkten sonra timerini kapat sonra başka bir timeri aktif et, o timer de kendini kapatsın site okuma işini yapan timeri aktif etsin
kod okuyan timer, timer1 olsun, diğeri timer2.
kod okuma bittikten sonra
(timer1 için kod)
timer1.enabled = false
timer2 = enabled = true
(timer2 için kod)
timer2.enabled = false
timer1.enabled = true
şeklinde yapabilirsin ama öncelikle timer2.enabled değeri ilk başta false olmalı. başka çözümlerde olabilir,bu dediğim olmasa..Ama siteyi sürekli timer ile kontrol etmek mantıksız bence. Sürekli bir refresh etmek programın için dezavantajdır
edit: inet kontrolüyle siteden kodları çekebilrsin,yada istediğin bi kısmı çekersin, bu şekilde yapmak daha mantıklı
-
wert bunu yazdı:
-----------------------------yenile yerine tekrar aynı sayfaya bağlamayı denesen
uzun zamandır delphiye bakmadım hatırlamıyorum şimdi :S
-----------------------------
Denedim hocam olmuyor bu kodla benim bilgisayuarda kusurusuz çalışıyor başka bir bilgisayarda denediğim zaman olmuyor exe yi kapatıp yeniden açmadığın müddetce hep eski veriyi çekiyor. timer2 olayına gelince :) zaten o şekilde devam ediyor kodun geri kalan kısmı ama sorun bu blokta aslında sorunda değil. Veriyi yenileyip alması gerekirken keşden çekiyor. sıkıntı budur. Keşden çekmemesi için bir alternatif :\ -
geçen sefer kodu pek inceleyememiştim sanırım bu daha rahat olur
idclient tabından idhttp ekle sonra timera çift tıkla
bunu yapıştır bakalım işe yarayacakmı
label1.Caption := idhttp1.get('http://www.server.com/guncelleme.txt');
-
wert bunu yazdı:
-----------------------------geçen sefer kodu pek inceleyememiştim sanırım bu daha rahat olur
idclient tabından idhttp ekle sonra timera çift tıkla
bunu yapıştır bakalım işe yarayacakmı
label1.Caption := idhttp1.get('http://www.server.com/guncelleme.txt');
-----------------------------eyvallah hocam onu hallettim.. tek eksik bir editör kodlamak :)