BDE $2501 Hatası

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
mavsar

BDE $2501 Hatası

Mesaj gönderen mavsar »

Merhaba arkadaşlar,

Delphiyi açtığımda BDE $2501 Hatası alıyorum. Bu hata "Insufficient memory for this operation." demek olduğunu bilirsiniz. Çözüm yöntemide BDE Admisintrator dan INIT ten SharedMemorySize'ı arttırmak (En sağlam yöntem 2048*x miş ) Tabi eğer BDE Administratoru bile açamıyorsanız bu hata yüzünden (ki benim başımdaki halde budur!) bu durumda registerdan INIT ten bu bilgiyi değiştirmelisiniz. Fakat bu çözüm yöntemlerine rağmen aynı hatayı almaya devam ediyorum (Borlandın sitesinde veya TeamB nin cevaplarında farklı bir çözümden bahsetmiyorlardı)

Mevcut tecrübesi ile bu sorumu yanıtlayabilecek arkadaş var mı?.

Not: Bu eski bir müşteriye yazdığımız program olduğundan BDE kullanılmış. Hali hazırda DOA kullanıyorum. Uygulamanın BDE ile devam etmesi gerekiyor.

Mehmet
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7586
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Merhaba,

hafızayı ciddi manada zorluyorsun herhalde :)

İşte çözüm önerileri :

1. En kolayı parayı bastırıp bellek almak :lol:

2. Seninde dediğin gibi MEMSIZE ve SHAREDMEMSIZE'ı yeniden ayarlamak.

3. Formlar otomatik create ediliyorsa, bu formları gerektiği zaman oluşuturp sonra yoketmek.

4. Table ve Query'leri sadece gerektiği zaman açıp, sonra kapatmak. En önemlisi de bu.

Kolay gelsin.
mavsar

Mesaj gönderen mavsar »

S.A.

Hocam öncelikle cevapların için sağol. Database'i ben zorlamıyorum aynı anda login olmuş ortalama 50 session (bu problemi seninde bildiğin web uygulamasında alıyorum.Orada session sınırı koymuştuk mecburiyetten) Datamodul dışında hiç bir formum yok program ActiveX. Ben her zaman Database bileşenlerini Try Except içine alıp başlangıçta açıp ardından kapatırım. (İstisnai durumlar hariç tabi) En sağlam yöntem memory arttırımı ama müşteri cimri ya para vermiyo RAM almaya :))

Mehmet
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7586
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Merhaba,

try..except'i yanlışlıklamı yazdın bilmiyorum ama, normal çalışma durumunda except blokları işletilmez. Yani,

try
işlemler
except
.. //işlemler normal çalışırsa bu kısım asla çalışmaz
end;

try..finally blokları kullanman lazım.

Onun dışında aklıma şu an için gelen bir çözüm yok maalesef.

Kolay gelsin.
mavsar

Mesaj gönderen mavsar »

Sorry :oops:

Gerçi cümle içinde yazmışım işim bitince free yaaprım diye ama.
Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 10:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin »

Evet bu hata ile ben de epey ugrasmistim. :(

Fakat benim ki sharedmemsize'i ayarlamakla kolayca hallolmustu. BDE'yi bile acamaman gercekten enteresan. Yanlis anlamadiysam makinayi resetlesen bile ve ilk olarak da bde'yi acmayi denesen bile acamiyorsun doyle mi.

Zira zaten memory siserse butun bde uygulamalarini kapatmadigin surece bellegin iade edilmedigini biliyorsundur.

Eger hic birsey calismadan bile bde'ye giremiyorsan makinada calisan diger uygulamalara camur at. isletim sisteminin ve makina konfigurasyonunun sizin programin gelişimene ayak uyduramadigini belirt :D

musterinin de hayirlisi tabi.....
Cevapla