Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Web Module (DLL) Timer tetiklenmiyor
#1
Merhaba,

Web=>Web Server Application ile web server'i DLL olarak oluşturuyorum. WebModuleUnit1 üzerine dizayn modda Ttimer nesnesi ekliyorum  Interval 30000 yapıyorum ontimer olayına kodu yazıyorum formun oncreate olayında Timer'i Timer1.Enabled := True; yapmak dahil tüm yöntemleri deniyorum sanırım timer nesnesi olayına hiç girmiyor. DLL olduğundan ve uzak server'da olduğunda debug işlemi yapamıyorum, daha önce böyle bir sorun yaşayan oldu mu acaba. (Normalde tüm olayları URI ile tetikletiyorum)

Teşekkürler.
Cevapla
#2
Bir yanlış anlaşılma olmaması için sorayım,

WebModule aslında Web aracılığıyla gelen REQUEST (çağrı-istek) için RESPONSE (cevap-içerik) üreten thread şeklinde çalışıyor. RESPONSE ile işlem sona eriyor.

30 saniye sonra ne tip bir işlem yaptırmak istemiştiniz ?
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla
#3
(08-08-2020, Saat: 00:25)mrmarman Adlı Kullanıcıdan Alıntı: Bir yanlış anlaşılma olmaması için sorayım,

WebModule aslında Web aracılığıyla gelen REQUEST (çağrı-istek) için RESPONSE (cevap-içerik) üreten thread şeklinde çalışıyor. RESPONSE ile işlem sona eriyor.

30 saniye sonra ne tip bir işlem yaptırmak istemiştiniz ?

Haklısınız, bende aynen bu şekilde Request-Response şeklinde işlemleri yaptırıyorum.
Timer aracılığıyla Query nesnesi ile MSSQL tarafında sadece bu stored procedure'yi tetiklettirmek istiyorum fakat olmuyor.

MSSQL tarafındaki stored procedure dışında da timer aracılığıyla hiçbir işlem yaptıramıyorum. Yani timer olayına hiç girmediğini sonuçlarından gözlemleyebiliyorum.

Teşekkürler.
Cevapla
#4
- Timer kısmında yapılacak işlemi şu yönerge ile :
  • DLL değil StandAlone EXE halinde kursanız, 
  • Bu sayede Timer kısmını WEBModule thread içinden server forma taşımış olursunuz.
  • Periyorik olarak veritabanı son kayıt bilgisi kontrol edebilir,
  • Belli REQUEST'ler ile oluşan değişikliği veritabanı üzerinden takip ile yakalayabilir ve işlem yapılabilir diye değerlendiriyorum.
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla
#5
(08-08-2020, Saat: 17:57)mrmarman Adlı Kullanıcıdan Alıntı: - Timer kısmında yapılacak işlemi şu yönerge ile :
  • DLL değil StandAlone EXE halinde kursanız, 
  • Bu sayede Timer kısmını WEBModule thread içinden server forma taşımış olursunuz.
  • Periyorik olarak veritabanı son kayıt bilgisi kontrol edebilir,
  • Belli REQUEST'ler ile oluşan değişikliği veritabanı üzerinden takip ile yakalayabilir ve işlem yapılabilir diye değerlendiriyorum.

Önerileriniz için teşekkürler üstad önerilerinizi exe üzerinde deneyimledim.

EXE haline getirip denediğimde webmodule unitin de Timer nesnesinini yine tetiklenmediğini gözlemledim.

Testlerim sonucunda aşağıdaki bilgileri de tüm DelphiCan'ların bilgisine sunayım, birilerinin işine yaracaktır.
1-Timer nesnesi böyle bir yapıda Webmodule unit'i üstünde işlevsiz oluyor.
2-Bu sorunu çözmek için; Projeye yeni bir datamodule ekleyip aynı kodları oraya çektiğinizde sorunsuz çalıştığınız gözlemledim.

Son olarak, benim projemde timer nesnesi ve devamlı kontrol yerine herhangi bir kullanıcı sisteme girerken kontrol yapıyorum ve sistem açısından daha sağlıklı bir yol ile çözmüş oldum.

Teşekkürler, İyi çalışmalar.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  delphi7 de timer sayma suresini labelde gosterme sadikacar60 2 507 11-04-2023, Saat: 23:55
Son Yorum: delphi.developer
  ÇÖZÜLDÜ-timer kullanmadan saat kontrolü mümkünmü? sadikacar60 3 2.809 10-09-2019, Saat: 22:19
Son Yorum: sadettinpolat
  Bu nasıl timer.. CesuR 4 3.121 09-02-2019, Saat: 08:40
Son Yorum: gonulali
  Timer İçerisinde Thread yhackup 9 6.669 14-08-2018, Saat: 10:54
Son Yorum: Tuğrul HELVACI
  [Çözüldü] Timer ile resim değiştirme Lord_Ares 4 3.823 16-04-2017, Saat: 04:09
Son Yorum: Lord_Ares



Konuyu Okuyanlar: 1 Ziyaretçi