From: Piske, H. <Har...@bo...> - 2002-07-01 15:24:17
|
Win32-GUI Versions 0.558 and 0.665 are totally different, the latter being a thorough rework. If you use one, try the other to see if it helps. I've made a post the other day about GUI crashing when I use DoEvents() - like you, I could only do some magic to shift the crash to a different point. What seemed to help: putting something into $_ (without using local). Maybe there IS an issue with garcol as you suggest because at the point where I experienced crashes, the $_ from the caller usually held a reference to a complex struct, so doing $_=0 must have caused some cleanups. Here's something you might not like: I've tested the crashy script under GUI558 and 665, Win2k and 98, Perl618 and 631 and many combinations of those and the crash doesn't seem to care. Here's another idea you might not like: when I came to a dead end in another project (not due to GUI crashing, but because it fails with some graphics elements under 98), I switched to Tk. Sometimes, depending on the project, personal taste and probably moonlight, it beats VB and if you already have the core functionality in Perl, it may be worth the effort of picking up Tk, if you're not yet familiar with it. Its most commonly used window manager ('pack') is less like GUI and more like Java in that it arranges "floating" widgets, but there are also ways to use fixed pixel coords. I'm not too good in Tk myself, I don't know if it comes with all the widgets of windows (haven't seen combo boxes yet and did not need accelerators). The trick seems to be NOT to try and make it do exactly what you're used from GUI but just take what it offers - I found some things a lot easier than with GUI and some more tricky. Have fun, Harald |