I have a complex Director Projector application that has been
in the field for years now. In the last few months we have started
having problems with the application.
The problem is that when the user clicks on a button in the
Projector app to quit (and our Lingo code calls quit or halt) the
app hangs before it exits.
Once it has hung you can't then start up an new instance of
the app or even of Director itself. You also can't kill the hung
app in Task Manager and any new instances of the app (or Director)
that you open sit waiting in Task Manager.
If you wait five minutes or so, the hung app sometimes will
finally exit. Other times, after five minutes or so the app becomes
killable in Task Manager. At which point any instances of the app
that you have tried to open will then appear.
Two other slight variations. Sometimes instead of hanging the
Projector exe will trip a Windows exception report. Occasionally
the hung app will never become killable and the only way to get any
Projector/Director usage back is to restart the machine.
The exit hang also happens when you quit Director if you have
been running the app within Director.
The app uses three third party Xtras: SequenceXtra, BuddyAPI
This problem first appeared a few months ago as an occasional
occurance. As of a few days ago the hang happens just about every
time I quit the Projector app on my machine.
It also seems to happen with copies of the Projector app that
were built several years ago. This implies to me that the new
behaviour may have been bought on by a Windows update.
To further complicate the situation, on some machines the
problem is different. I have one machine, which is upto date on
Windows updates, where old versions of the Projector app crash on
exist but don't hang and new versions of the app don't crash or
I tried running the Projector in a clean WinXP install (no
services packs or updates installed) and there were no hangs. I
also have reports that the hang doesn't happen in Windows Vista.
I tried removing all of our Lingo code that runs on exit,
except the "halt". The hang still occurs. My logging suggests that
the hang occurs after all the Lingo code have finished.
Although I have not had any of the described problems, I'd
looking into registered Objects etc. Since the app hangs and
memory, it might be a good idea to unset all globals and
are being used before executing the 'halt' command.
I have since discovered that the crashing problem only
happens on version 1.6 of the SequenceXtra Xtra, versions of the
projector using version 1.9 of SequenceXtra don't crash when
closed. Unfortunately I can't use version 1.9 because of other more
serious issues with it.