1

Konu: Exe haline dönen proğram neden yavaşlar

VFP içinde oldukça hızlı çalışan bir proğram exe ye derlendikten sonra anormal yavaşlıyor. proğramın açılışı 1 dakkayı buluyor ve grid içinde kayıtlarda dolaşmakda işkenceye dönüyor. oysa VFP içindeyken hiç sorun yok.

Yardımcı olacak arkadaşlara şimdiden teşekkürler

2

Re: Exe haline dönen proğram neden yavaşlar

Genel olarak Kullandığın Formlarda

Visual Fox Pro
DataSession = 2

kullanıyorsan pek sorun yaşamazsın.

Benzer bir sorunu daha önce bende yaşamıştım. Sorun datasession ile ilgiliydi.

Not: Programının açılışına şuna benzer bir prosedure yerleştir. Datasession u 2 olan her form u açtığında Load yada Init de bu prosedürü çağır

Visual Fox Pro
Procedure SETAcilis

    Set Sysmenu Off         && Sistem Menüsü
    Set Reprocess To 3 AUTOMATIC && Set Reprocess To Automatic && CB: actually I don't need this one. I explicitly set reprocess to 0 where I need it
    Set Console Off
    SET EXCLUSIVE OFF
 
    On Key
    Set Safety Off
    Set ENGINEBEHAVIOR 90
    Set REPORTBEHAVIOR 90 && Önceki -> 80
    Set Deleted On
    Set Optimize On
    Set Seconds OFF && CB
    SET HOURS TO 24
    Set Nulldisplay To ""
    =Sys(3055,2040) && FOR and WHERE Clause Complexity
    Set SQLBUFFERING On
 
    If _vfp.StartMode = 0 && Program .PRG den çalıştıysa Command Window 'a geri dön
        Set Escape On             && ESC ile programdan çıkış
        SET DEBUG On
    Else
        Set Escape Off    && ESC ile programdan çıkış
        SET DEBUG OFF
    Endif
ENDPROC

Not : Kendi projende kullandığın SET komutlarını da eklemeyi unutma. Ve Datasession Propertisinin etkilendiği SET komutlarını HELP den incele..

Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

3

Re: Exe haline dönen proğram neden yavaşlar

Malesef çözüm olmadı.
form açılıyor ama içindeki objeler 30 sn sonra gözüküyör. formun içindeki gridde dolaşmakda aynı şekilde dert.

4

Re: Exe haline dönen proğram neden yavaşlar

Main.PRG de ( yada Projenin ANA programı yada SCX i )

Set Step On

ile programın nerelerde yavaşladığını debug modunda kontrol ettin mi?

- 3. Parti  ücretli yada ücretsiz ActiveX denetimleri kullanıyormusun?
- Programında İnternet üzerinden kontroller yapıyormusun? ( İnternet hızına bağlı olarak bahsettiğin durum oluşabilir. )
- İşletim Sisteminde olan güncellemeler? ( Bir ihtimal - MS nin bazı güncellemelerinde olabiliyor. Daha sonra bir yama ile düzeltebiliyorlar. )
- Çalıştığın dosyaların boyutları? Ve bu DBF lerdeki index lerin ( Belki de indexlerini tekrardan oluşturmalısın )

İlk aklıma gelenler.

Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

5

Re: Exe haline dönen proğram neden yavaşlar

Uğur hocam
VFP içinden proğram hiç sorunsuz çalışıyor.
Vfp de yaptığım proğramlar makinada gayet düzgün çalışıyor (bu proğram hariç)
İnternertle alakalı bir satır yok

Forumda sadece bir multiselectgrid ve bir Olecontrol var. bunları başka proğramda kullandım hiç sorun yok

İlginç durum sad

6

Re: Exe haline dönen proğram neden yavaşlar

En kolayı başlangıç satırlarını kaç sn.  yede geçtiğini bulman
Bunun için bir txt dosyaya hangi satırı kaçıncı sn. de geçtiğini yaz.
Sonra o txt dosyasını incele bence. o Sana fikir verir.
Nereye yoğunlaşman gerektiğini anlarsın.

Bu arada register edilmemiş ocx, dll var mı?  Onlara dikkatli bak.

Bu benim başıma bir kaç kere geldi..

7

Re: Exe haline dönen proğram neden yavaşlar

Forumda sadece bir multiselectgrid ve bir Olecontrol var. bunları başka proğramda kullandım hiç sorun yok

MultiSelectGrid VFP nin kendi nesnesi olduğu için onu pas "geçebilirsin" gibi görünüyor.

Olenontrol 'ün nedir?

Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

8

Re: Exe haline dönen proğram neden yavaşlar

Geçmişte benim yaşadığım farklı bir sorunu Session yardımı ile çözmüştüm.

Kaynak forumda mevcut:

http://www.fox4um.com/post/6135/#p6135

Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

9

Re: Exe haline dönen proğram neden yavaşlar

Tam 1:1 senin derdin gibi olamasada, benzer bir kabuz bende yaşamışdım. Belki işine yarar.
(Forum'da dert yanmışdım ... ver bikaç ay sonra tesadüfen bulduğum çözümü de yayınlamışdım. Ne olduysa ama o konuyu bulamadım.)

Bendeki sorun: tek bir makinede form'a girdiğinde grid'i yaratırken dakikalarca bekletiyordu. Grid'i yaratıkdan sonra ama hiç birşey olmamış gibi şakır şakır çalışmaya devam ediyordu.
Sorun eski ve kullanımda olmayan bir yazıcıdan kaynaklanıyordu. O yazıcı ve onun sürücülerini sildim ... ve düzeldi.

Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.

10

Re: Exe haline dönen proğram neden yavaşlar

exe yi başka bir makinada dene bence. donanım mı yazılım mı belli olur belki.

11

Re: Exe haline dönen proğram neden yavaşlar

bende benzer sorun APRIN() komutu ile olmuştu. Bulamadığı ama izleri olan bir printeri ararken çok bekliyordu.

Birde http://www.fox4um.com/topic/1309/derle … ima-geldi/

VFP9 SP2

12

Re: Exe haline dönen proğram neden yavaşlar

Üstadlarım verdiğiniz fikirler için teşekkürler. sorunun bir bölümü richtx32.ocx den kaynaklanıyordu projeye ekleyince forum normal sürede açılmaya ve onjelerde normal olarak gözüküyor.

Formda bulunan command butonun clikinde
Select * from bilgi where Upper(Chrtran(Alltrim(bilgi.baslik),'ğüşıöçi', 'ĞÜŞIÖÇİ'))=Upper(Chrtran(Alltrim(tcSelector003.sistem),'ğüşıöçi', 'ĞÜŞIÖÇİ')) into cursor bilgi1
*Go Top
*Locate For Upper(Chrtran(Alltrim(bilgi.baslik),'ğüşıöçi', 'ĞÜŞIÖÇİ'))=Upper(Chrtran(Alltrim(tcSelector003.sistem),'ğüşıöçi', 'ĞÜŞIÖÇİ'))
** richtx32 activix
With Thisform
    .sistem.ControlSource=bilgi1.bilgi1
    .neden.Visible=.f.
    .olerTF.Visible=.f.
    .sistem.Visible=.t.
    .sistem.Refresh
Endwith

buraya tıkladıktan sonra multiselect grid oldukça yavaş tepki veriyor. bunun nedeni ne olabilir ?