1

Konu: "Insufficient Memory" hatası

Arkadaşlar, ben 1993 yılından beri FoxPro ile ilgileniyorum. Amatörce, FoxPro For Dos 2.5 ile çalıştığım işyerinde kayıtlı olan üyelerin bilgilerinin tutulduğu bir program yazdım. 1993 yılında programı yazmaya başladığım ilk makinada MS-DOS işletim sistemi vardı. Günün teknolojik gelişmelerine ayak uydurarak WINDOWS 3.1, WINDOWS 98 ve derken şu anda XP işletim sistemi kullanıyorum.

Yalnız WINDOWS 98 işletim sistemini kullanmaya başladıktan sonra, programın çalışması esnasında bilgisayar sık sık (çalışma temposuna göre günde 7-8 hatta 10 defaya kadar) Insufficient Memory hatası veriyor.

RUN komut yardımı altında yazılanlardan anladığım kadarıyla (çok iyi ingilizce bilmediğim için) bazı denemeler yaptım ama başarılı olamadım.

Insufficient Memory hatasını nasıl çözebileceğim hususunda tecrübelerinizi paylaşırsanız çok mutlu olurum.

Şimdiden herkese çok teşekkür eder, çalışmalarınızda başarılar dilerim.

2 Son düzenleyen, metin (13.04.2007 13:31:30)

Re: "Insufficient Memory" hatası

standart değil extended exe yap. problemin çözülür.
eğer exe değil de direk foxpro içinden çalıştırıyorsan. fox.exe veya foxpro.exe değil foxprox.exe yi çalıştır.

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

3

Re: "Insufficient Memory" hatası

Ayrica o mesaj ne yazik ki tam tersi anlamina da gelebiliyor ve memory fazla oldugu zamanlarda da cikabiliyor (DOS'ta rastlamadim hic ama belki o da etkileniyordur). Extended kullanmanin yanisira Config.fp dosyasinda memlimit ayari yapman gerekebilir.
Not: Hem normal hem extended runtimelarin oldugu bir yerde yanlis hatirlamiyorsam foxpro normalini seciyordu. Onun icin exeni:
myExe.exe -x
ile calistirabilirsin, extended kullansin diye.

4

Re: "Insufficient Memory" hatası

Hocam ilk önce ilgilendiğiniz için teşekkür ederim. Yazdıklarınızdan yola çıkarak yaptığım işlemlerle ilgili bazı noksan bilgi verdiğimi düşündüğüm için ilave olarak bu bilgileri de yazma ihtiyacı duydum.

Eğer aşağıya yazdıklarımda bir yanlışım ya da noksan bir işlem yapıyorsam lütfen beni uyarın.

Öncelikle programı EXE olarak çalıştırıyorum.

Programı *.exe' ye ise şu şekilde yapıyorum.
D sürücüsüne bir klasör açarak, PRG uzantılı dosyaların hepsini ve FOXPRO25 klasöründe bulunan bütün FoxPro dosyalarını da bu klasörün içine atıyorum. Daha sonra "MS-DOS Komut İstemi" ni çalıştırıyorum. Klasöre girerek FOXPROX yazıp Enter'e basıyorum. Command kutusunun da geldiği menüde iken "Program" daha sonra "Compile" girerek "Tag All" ve "Compile" tıklıyorum. Bu işlem bittikten sonra Command kutusuna "MODI PROJE" yazıyorum. Çıkan pencerede sırasıyla "New" ve "Add" tıklayarak *.PRG dosyasını seçip "Add" UNTITLED.PJX penceresinde sırasıyla "Build" e tıklıyorum ve "Select Build Option" penceresi geliyor. Burada
(*) Build Executable
(*) Stand-alone
[*] Display Errors
[*] Rebuild All  işaretleyerek "OK" basıyorum.

Çıkan pencerede "Yes" tıklayınca exe yapmak istediğim programın adını atıyorum, yani "UYETAKIP" yazarak "Save" tıkladıktan sonra da yeni çıkan pencerede "Build" tıklıyorum.

Ardından *.PRG dosyalarından referans alarak UYETAKIP.EXE dosyası oluşuyor.

5

Re: "Insufficient Memory" hatası

extended exe yap
build exe myexe from myproj extended

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

6

Re: "Insufficient Memory" hatası

cetinbasoz yazdı:

Ayrica o mesaj ne yazik ki tam tersi anlamina da gelebiliyor ve memory fazla oldugu zamanlarda da cikabiliyor (DOS'ta rastlamadim hic ama belki o da etkileniyordur). Extended kullanmanin yanisira Config.fp dosyasinda memlimit ayari yapman gerekebilir.
Not: Hem normal hem extended runtimelarin oldugu bir yerde yanlis hatirlamiyorsam foxpro normalini seciyordu. Onun icin exeni:
myExe.exe -x
ile calistirabilirsin, extended kullansin diye.


memory fazla olayı foxpro win 2.6 ile oluyormuş, dos'ta olmuyor. eğer memlimit ayarı yaparsan .plb dosyalarına bellek kalmayabiliyor ve problem çıkabiliyor. eğer 4 mb boş bellek varsa foxpro dos extended modda hiçbir şekilde problem çıkarmıyor. isterse exe dosyan 30 mb olsun.

senin exe dosyan anladığım kadarıyla compact exe. çetin kısmen doğru söylemiş. parametreyi yanlış hatırlıyorsun... wink

-x dersen standart kullanmaya zorlarsın. +x dersen extended kullanmaya zorlarsın.

en güzeli kafadan extended exe yapmak.

zamanında herkes turbo pascal ve clipper ile overlaylarla uğraşırken biz extended exeler ile çok rahat ettik foxpro da. cool

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

7 Son düzenleyen, river (13.04.2007 21:28:24)

Re: "Insufficient Memory" hatası

Programın çalıştığı dizinde config.fpw isminde bir dosya olması lazım. Dos altında adı nedir bilmiyorum ama windows altında adı bu.
Bu dosyayı herhangi bir text editörü ile aç yoksa da yarat ve içine şu satırları ekle

TITLE=TmtSoft CopyRight(C) TmtSoft 1996-2007
MEMLimit=80,8192,65535
MVCount=1600

Burada Title program çalıştığında formun başlık satırında yazılacak olanlar, kendine göre düzenle
MemLimit bellekte ayrılacak olan miktarlar, bence aynen kullan değiştirme
MVCount da programın çalışma zamanında izin verilen max değişken sayısı. Bunu da kendine göre değiştirebilirsin.

Ama MEMLimit ayarları önerdiğim şekilde kalsın bence.
Sanırım sorununu çözecektir. İhtiyaç duyduğun tek şey MEMLimit ayarları ama MVCount a da programın büyüdükçe ihtiyaç duyabilirsin.

8

Re: "Insufficient Memory" hatası

Program DOS programıysa extended exe yapmak gerekiyor.

9

Re: "Insufficient Memory" hatası

Yardımcı olan bütün herkese teşekkürler.