Can not create dialog 7.11

demont frank
Posts: 167
Joined: Thu Mar 22, 2007 11:24 am

Can not create dialog 7.11

Post by demont frank »

Hello,

Last week we have made a upgrade to fwh7.11

From that moment we have many error's , 'can not create dialog', at random . Today , with 5 customers , +/- 10

This error occurs only after some time ( 30 min) , so i suppose it has something to do with memory management.

How can i test memory and controle were it go's down ?

Frank
User avatar
Otto
Posts: 4470
Joined: Fri Oct 07, 2005 7:07 pm
Contact:

Post by Otto »

Do you have this fix?

This is a necesary fix for FWH 7.11 in Class TMsgBar:
Code:

METHOD SetMsg( cText ) CLASS TMsgBar

DEFAULT ::cMsg := ""

if ::l2007
::cMsg = cText
::Refresh()
return nil
endif

::GetDC() // must be placed here!!!
...


_________________
regards, saludos

Antonio Linares
www.fivetechsoft.com
demont frank
Posts: 167
Joined: Thu Mar 22, 2007 11:24 am

Post by demont frank »

Otto ,

Yes , it is applyed. It seems to be very bad , since the previous thread , 3 other errors are reported , all 'cannot create dialog' , at random.

Most off them occurs after +/- 1 hour

Frank
User avatar
Otto
Posts: 4470
Joined: Fri Oct 07, 2005 7:07 pm
Contact:

Post by Otto »

Hello Frank,

I don’t have FWH versions at my clients. In-house we use the program 7*24 hours with no problem on Vista PC's.
I use Harbour what do you use?

Sure you are a harbor expert but I mention what problems I faced:

I had fieldnames and function names in clipper where sometimes from the 10 position on the names were not identically.
Clipper does not care about but in harbor you get an error.


Regards,
Otto
demont frank
Posts: 167
Joined: Thu Mar 22, 2007 11:24 am

Post by demont frank »

Otto,

From the moment we changed to fwh7.11 , we have at least 10 errors a day , all 'cannot create dialog' , at random

2 hours ago i went back to 7.7 , from then no errors.

So i am convinced it is a memory problem from 7.11

Antonio ???

Frank
User avatar
Otto
Posts: 4470
Joined: Fri Oct 07, 2005 7:07 pm
Contact:

Post by Otto »

Do you use harbour or xHarbour?
Regards,
Otto
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Frank,

We haven't modified anything in 7.11 that could cause those "can't create dialog" errors.

It has to be something else that you have recently changed in your application, or something related to Harbour/xharbour

Do you use Borland controls in your dialog boxes ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

What controls do you use in those dialogboxes ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
norberto
Posts: 566
Joined: Thu Aug 30, 2007 3:40 pm
Location: BR

Post by norberto »

HI, i use fwh 7.10 and 7.11, with fix, in 7*24, 15 workstations, 1000000 records without problems.

xharbour cvs 1.00 30/10/2007 (compile myself)
fwh 7.11 (compile myself)
bcc 551 sp2
ads server (local to tests)
windows server network with nt4 workstation and xp workstations

are you using borland controls??
demont frank
Posts: 167
Joined: Thu Mar 22, 2007 11:24 am

Post by demont frank »

Antonio,

I am working in a MDI environnement with dialog's.
Each dialog is executed from xbrowse. The dialog's have in some cases a tsbrowse or xbrowse object , together with the common control's from fw (no borland controls).


I am using xhb 1.01

How can i follow the memory ammount during execution ?
Can i place some tracelog's to see which value it has ?

Frank
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Frank,

> I am using xhb 1.01

Do you mean xHarbour commercial ?

> How can i follow the memory ammount during execution ?

The cannot create dialog box is a not a memory related issue. Anyhow you can open Windows's tasks manager and locate your application and check what memory amount is using
Last edited by Antonio Linares on Tue Nov 27, 2007 3:29 pm, edited 1 time in total.
regards, saludos

Antonio Linares
www.fivetechsoft.com
demont frank
Posts: 167
Joined: Thu Mar 22, 2007 11:24 am

Post by demont frank »

Antonio,

Comercial version

Compiling with fwh7.11 , i can reproduce the error :

xbrowse is used to select a record (dialog)

Opening the dialog , closing it and repeat this ( +/- 20 or more , unpredictable) , result in a error

Error description: Error FiveWin/3 Cannot create Dialog Box:
Title: Bijsluiters : 930920 /1 Aantal : 4800 BWB /MW

Stack Calls
===========
Called from: DIALOG.PRG => CREATEDLGERROR(0)
Called from: DIALOG.PRG => TDIALOG:ACTIVATE(0)
Called from: INVBEST.PRG => SHOWAOFB(3826)
Called from: INVBEST.PRG => (b)INPDLGDOSA(1279)
Called from: XBrowse.prg => TXBROWSE:LBUTTONDOWN(2408)
Called from: => TWINDOW:HANDLEEVENT(0)
Called from: CONTROL.PRG => TXBROWSE:HANDLEEVENT(0)
Called from: window.prg => _FWH(3233)
Called from: => WINRUN(0)
Called from: window.prg => TMDIFRAME:ACTIVATE(900)
Called from: HENMAIN.PRG => MAIN(149)

During this test memory increases from 744 to 790 (maybe 50 cycles)

The same test , after compiling with 7.7 , has not given an error

After memory was 800 , and maybe 100 x openening and closing , i give it up

Is it normal that memory increases during this test ?

Frank
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Frank,

Thats a very little memory increase. Its not a problem, as Harbour calls the garbage collector from time to time

Are you using Borland controls in that dialogbox ? How do you End() the dialog ? Please show us a portion of the source code, thanks
regards, saludos

Antonio Linares
www.fivetechsoft.com
demont frank
Posts: 167
Joined: Thu Mar 22, 2007 11:24 am

Post by demont frank »

No borland control's.

I try to use in most dialog's the same procedure

First , in main , a MDI window is opened in a global var ownd. Other modules have GLOBAL EXTERNAL oWnd

When in the menu is choosen to edit a dbf , a dialog from oWnd (no wait clausule)with xbrowse is opened to choose the record. This can be done with RETURN or lDblClick.
I noticed that when lDblClick is used the memory tends to increase, not with RETURN

All the dialog's follow the same procedure :

Code: Select all

DEFINE DIALOG oDlg RESOURCE "INVLEV" OF oWnd TITLE WinTit
oDlg:bGotFocus  = { ||dbSelectArea(cAlias) }
....
Define xbrowse and some buttons
....
ACTIVATE DIALOG oDlg NOMODAL;
ON INIT (SetXpos(oBrw,nLast) , oBrw:Setsize(BrwWidth) , InitDlg(oDlg));
VALID  ( IIF(lSluit , .T. , IIF(GETKEYSTATE(VK_ESCAPE) , (oBut:Setfocus() , .F.) , .T.) ) )
lSluit is set to .T. with the action from the ok-button

From this dialog the edit dialog is opened , same procedure

Antonio , it is a serious problem , making it impossible to use fwh7.11
Monday (+/- 10 customers) , i had 15 errors. After compiling with 7.7 and activating this exe , no errors anymore !!!!!!

On some computers , the error happens after 30 min , other after one or two hours.

Frank
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Frank,

Please post the RC source for RESOURCE "INVLEV"

Also please remove NOMODAL, just for a test, and lets see if that makes a difference. Thanks
regards, saludos

Antonio Linares
www.fivetechsoft.com
Post Reply