|
Home > Archive > Programming with dBASE > March 2006 > Need a utility
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
|
|
| bigMike 2006-03-26, 9:23 am |
| Hi all -
Not getting much action on my other inquiry but it is the weekend.
I just had a thought. I remember years ago I had a utility (probably DOS)
that I could run before I opened DBXL (actually a better program than
dBase3+). What it did was show live, actual time program lines in a small
window so you could see exactly what was happening, when it was happening.
Since the debugger is bombing out on me with my problem I thought that this
utility (or one like it) could help me solve my problem.
Anybody hear of this or a similar utility I could use. Don't care if I have
to buy it.
bigMike
.....but I didn't say "money is no obstacle..." ;-)
| |
| Gerald Lightsey 2006-03-26, 8:23 pm |
| On Sun, 26 Mar 2006 06:16:32 -0800, in the dbase.programming group,
bigMike said...
> What it did was show live, actual time program lines in a small
> window so you could see exactly what was happening, when it was happening.
> Since the debugger is bombing out on me with my problem I thought that this
> utility (or one like it) could help me solve my problem.
>
> Anybody hear of this or a similar utility I could use. Don't care if I have
> to buy it.
Since dBASE III+ was still an interpreted language some things were
possible that may be very difficult with a compiled language even if you
had the tool you seek.
Probably your best bet is to use the ? output command various places in
your code to record checkpoints, variable values or whatever else you
may find useful to the command window results pane and a .txt file
through set alternate.
Since this type of debugging can get fairly involved it often makes
sense to retain a copy of your code without debugging in place to avoid
a tedious job of removing it after you finally discover the simple
answer to your complex problem.
Gerald
| |
| bigMike 2006-03-26, 8:23 pm |
| Hi Gerald -
The problem is that everything quits at a certain point...and it seems that
the frameWin gets focus. I have been able to follow the code line by line
in the debugger (a tool that I love). The code gets back to the Parent
form, hits 2 "return" statements and kaBoom - froze in the frameWin. WHen I
say this I mean that the Parent form now sits on the Windows desktop and the
_app.frameWin desktop sits on top of it. I cannot "click" on the Parent
form without it beeping at me - ie: nothing on that form now functions as
apparently the frameWin has focus. So, all can do is get out of dB2k at
this point.
Frustrating as all hell!
And, yeah, I think the tool I had was a DOS type that wouldn't work for me
if I could find it.
> Since this type of debugging can get fairly involved it often makes
> sense to retain a copy of your code without debugging in place to avoid
> a tedious job of removing it after you finally discover the simple
> answer to your complex problem.
LOL! Thanks, I needed that ;-)
bigMike
| |
| Gerald Lightsey 2006-03-27, 3:23 am |
| On Sun, 26 Mar 2006 13:05:51 -0800, in the dbase.programming group,
bigMike said...
> The problem is that everything quits at a certain point...and it seems that
> the frameWin gets focus. I have been able to follow the code line by line
> in the debugger (a tool that I love). The code gets back to the Parent
> form, hits 2 "return" statements and kaBoom - froze in the frameWin. WHen I
> say this I mean that the Parent form now sits on the Windows desktop and the
> _app.frameWin desktop sits on top of it. I cannot "click" on the Parent
> form without it beeping at me - ie: nothing on that form now functions as
> apparently the frameWin has focus. So, all can do is get out of dB2k at
> this point.
Just remember that you can collect about anything you want to check and
output the values up to the point of a crash. This includes values that
are going to be returned.
Having said that I can remember back in VdB 5.x having something that
would crash around a certain point and I could find absolutely nothing
wrong with the code at that point. I finally copied out a block of code
surrounding the problem to print for a reference, deleted the code and
then typed it back in and there was no problem. Something was getting
compiled in there that was disastrous. Cutting it and pasting it back
in did not cure the problem because whatever was in there got pasted
back in. It took a cut and retype to fix it. Also I couldn't see
anything in there with a hex editor that was suspicious. This is just
to say that there are some problems that occur that defy logic.
See if you can cut the offending block out in such a way that the
application will successfully run through what is left. Then try typing
all or part of the the code back in small steps if possible. If it runs
keep it filed as a story to tell like I have. If it fails again
hopefully the difference between what runs and what fails will be small
enough that you can get some help on a small failing code snippet.
Again good backups are recommended.
Gerald
| |
| bigMike 2006-03-27, 11:24 am |
| Hi Gerald -
Funny you should mention the re-typing thing. I was just thinking about
that this morning. I remember the days of dBase II
when if you ever backed up in the editor to make a correction or whatever,
hidden escape codes or special chars were inserted and you couldn't see
them. The only thing you could do is re-type the code.
I'm going to look at doing that to the grandchild form as the problem
doesn't occur unless that particular form is opened - even if I do nothing
on that form and just close it. I tried another grandchild form and had no
problem so that kinda narrows it down for me. What I DID do is remove parts
of the grandchild form's code a bit at a time. I ended up with an empty
foorm with only a textlabel item on it and I had just put it on
new....problem still occurred so it sound like maybe the problem is in the
header stuff.
I'm going to cross my fingers and my legs ( ;-) to see if that will do it.
Thanks, Gerald.........
bigMike
| |
| Marc Hamelin 2006-03-27, 11:24 am |
| How do you call the child form?
I had a similar problem once when I was opening and then closing a child
form. The parent form hung up because it was "released" as the child form
was closed. It appears I was overwriting one with the other or something
like that. I don't remember the specifics, but I know that I had to change
the way it was called or the variable name containing the form or simply
make it local... Not really sure which though...
Marc Hamelin
|
|
|
|
|