Delphi 2009 da 2 tane projem var Server ve Client uygulaması olarak
Windows 7 üzerinde geliştiriyorum projeleri Client uygulaması eğer Windows XP işletim sistemi üzerinde çalıştırılırsa belli bir süre sonra 10053 hata kodu vererek Server uygulamasından düşüyolar. Diğer işletim sistemlerine böyle bir sorun görülmüyor.
Bağlanan kullanıcılar TList bileşeninde
type
TAntiCheatData = record
isOK: Boolean;
Address, SteamID: string;
LastSignal, LastRequest: Cardinal;
Socket: TCustomWinSocket;
end;
bu record ile tutuluyor dinamik olarak oluşturup bilgileri doldurup adresi TListe yazdırıyorum her hangi bir işlem yapcağımda Address veya SteamID değerlerinden bu recordu bulup işlem yapıyorum bir sorun yok çalışma gereği Server - Clientlere check komutu gönderdiğinde clientler signal olarak tekrar servera dönüyor LastSignal ve LastRequest'te bunlara ait zaman değişkenleri Socket zaten kullanıcının bağlandığı socketi tutuyor isOK ise tüm bilgiler atandıktan sonra true oluyor eğer isOK değilse işlem yapılmıyor ve client düşürülüyor
10053 hata kodunun açıklaması gereği belki boş duran bağlantı kapatılıyordur deyip Client ve Server Arasında Ping - Pong ilişkisi kurdum 30 sn de bir birbirini pinglemekteler ama sorun hala aynı
Belli bir zaman sonra Server dan gönderilen check komutlarını client değerlendirmiyor sanki packet kaybı oluyormuş gibi cliente gitmiyor bu komut kodsal bir problem değil
Herhangi bir önerisi, görüşü, çözümü olan var mı ? Çok canımı sıktı bu sorun
