Link to home
Start Free TrialLog in
Avatar of Zonman
Zonman

asked on

VB6 sp5 Picture box control vanishes from screen, other usercontrols turn into Pictureboxes

More often then I would care to see, my rather large VB project behaves in a most annoying manner.

1.I use a picturebox as a container for user controls (to achieve similar to wizard or guide effect).  Occassionally if I compile but don't save first, the picture box disapears, but the child user controls remain.

2.Sometimes usercontrols become Picturebox (particularly after VB crashes (which it does a lot))

3.Occassionally, OCX controls get references as if they are dlls (or for the OCA file) including standard Microsoft Controls.

Any ideas?
ASKER CERTIFIED SOLUTION
Avatar of rspahitz
rspahitz
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Smallint
Smallint

Avatar of Zonman

ASKER

I have not tried SP6 as the list of bugs fixed did not include anything I could see as necessarily to solved any problems for me.  I will try on the assumption that they haven't told us the full story.

The comment that VB loses references to undefined controls; we already have broken program down into a logical set of OCX's and dll so to break it down further would be impossible at this stage.

The question really has to be HOW does the ctx file become corrupt or missing.  The majority of times this problem occurs straight after a compile, particularly when you remember to do a SAVE after the compile.... Why would you not automate saving before compile (as VB does before running in the IDE).
Again, I think the problem is the complexity of VB in trying to assemble large blocks of memory.  This is a bug that I've seen but haven't been able to isolate.

Maybe you could add the controls at run-time, even though this is a major pain.
Points to rspahitz for identifying that VB has internal compile bugs that sometimes corrupt the vbx or ctx files when the project is too large.