robsuttonjr
MIS
First I hope I don't cause any yawns as I need to explain a bit. I started a thread on this before but I am beyond desperate to get this resolved or face serious consequences. I won't beg but I am pleading for help from all of you I respect.
I started developing Fox apps about 7 years ago and learned from the hip. Never had any real formal training on it but was given more complex tasks until finally I am tagged as an 'application developer'. Up until my current project I have done mostly procedural code and haven't used visual classes or oop'd much. But my current project is completely different from all the others with visual classes, toolbars, prg classes, procedue calls, etc.
Now to get to the point. I have developed an application with over 10 template forms which are subclassed off a template form I created as a visual class. This template form has a container with a toolbar which is used acrossed all forms as a main nav bar. I have a drop down that will call the release of the current form after calling the next template form. The appearance is that the form simply changes to the next without the appearance of actually closing one form and opening another. Also keep in mind that I have a main.prg which initially launches a login which calls the first template form. The problem is that very sporadically I get this fatal error with a C0000005 generic barf message then the app closes hard after suggesting I email MS the info. I have tried commenting out some objects that are 3rd party with no success. Since I can't really email everyone my entire program and want to try and suggest some areas of focus after my own research here I go:
A. Calling a form from current form then closing current form? Here is the code in my main nav bar combo interactive change event:
SELECT Ctemplate_securities
SET FILTER TO template_id_fk > 1
gnWidth = ThisForm.Width
gnHeight = ThisForm.Height
gnLeft = ThisForm.Left
gnTop = ThisForm.Top
DO FORM (Ctemplate_securities_nav.Template_Path)
ThisForm.Release()
B. I am using toolbars which I have had to use tricks to get them to dock properly on pageframes. I read in other threads that toolbars had caused issues in previous foxpro versions. Any possible link here?
C. Each form template will create sets of cursor tables used in memory. However I don't close these when the template is released, is there any issue here? Is there any other cleanup code I should or could use to make sure all objects associated with a particular template is released so I don't have some invalid memory state?
D. When I suspect a crash is about to occur I notice a delay when closing a particular form template.
E. When user closes the current template I use a form level variable which is set to true in the queryunload event to track the close request then in unload I will issue clear events if llformclose is true.
Here is the summary of what occurs:
Main.prg
sets procedures
on error ...
Login.scx
security cursors
business class procedure establishes connection object and verifies user access to templates.
Main_Splash.scx
From here selecting a template from drop down launches new template and releases current.
Regards,
Rob
I started developing Fox apps about 7 years ago and learned from the hip. Never had any real formal training on it but was given more complex tasks until finally I am tagged as an 'application developer'. Up until my current project I have done mostly procedural code and haven't used visual classes or oop'd much. But my current project is completely different from all the others with visual classes, toolbars, prg classes, procedue calls, etc.
Now to get to the point. I have developed an application with over 10 template forms which are subclassed off a template form I created as a visual class. This template form has a container with a toolbar which is used acrossed all forms as a main nav bar. I have a drop down that will call the release of the current form after calling the next template form. The appearance is that the form simply changes to the next without the appearance of actually closing one form and opening another. Also keep in mind that I have a main.prg which initially launches a login which calls the first template form. The problem is that very sporadically I get this fatal error with a C0000005 generic barf message then the app closes hard after suggesting I email MS the info. I have tried commenting out some objects that are 3rd party with no success. Since I can't really email everyone my entire program and want to try and suggest some areas of focus after my own research here I go:
A. Calling a form from current form then closing current form? Here is the code in my main nav bar combo interactive change event:
SELECT Ctemplate_securities
SET FILTER TO template_id_fk > 1
gnWidth = ThisForm.Width
gnHeight = ThisForm.Height
gnLeft = ThisForm.Left
gnTop = ThisForm.Top
DO FORM (Ctemplate_securities_nav.Template_Path)
ThisForm.Release()
B. I am using toolbars which I have had to use tricks to get them to dock properly on pageframes. I read in other threads that toolbars had caused issues in previous foxpro versions. Any possible link here?
C. Each form template will create sets of cursor tables used in memory. However I don't close these when the template is released, is there any issue here? Is there any other cleanup code I should or could use to make sure all objects associated with a particular template is released so I don't have some invalid memory state?
D. When I suspect a crash is about to occur I notice a delay when closing a particular form template.
E. When user closes the current template I use a form level variable which is set to true in the queryunload event to track the close request then in unload I will issue clear events if llformclose is true.
Here is the summary of what occurs:
Main.prg
sets procedures
on error ...
Login.scx
security cursors
business class procedure establishes connection object and verifies user access to templates.
Main_Splash.scx
From here selecting a template from drop down launches new template and releases current.
Regards,
Rob