Hi Howi,
no I can't - because we did not try this - no need because of "TerminateWrapper" (see below).
We also do not know the reason for the WM_GETTEXT
---ensure that the calling window is named like it stated ![Smile [:)]](/emoticons/emotion-1.gif)
Strange - but it can be that (for any reason) TTN does not use FindWindow(...."TheNameGiven")
instead they use EnumerateWindows and search for the text.
Anyhow - we filter only for WM_COYPDATA with the 'ttRG' marker in it.
We built in a new "TerminateWrapper" function.
This is needed for the "KeepAlive" thread to shutdown.
In this function we also check if RawGPS is openend - if so we DisableRawGPS.
But for sure we know - DisableRawGPS can be called without any problems even if you did not EnableRawGPS.
The only possible side effect would be that another app obtaining RawGPS will loose it (therefore we check).
I think also the right way to terminate TTN would be to check for "turn of RawGPS publisher" - but this is not harmfull.
On the other hand you could say - if you terminate your app - calling EnableRaw... YOU forgot to Disable it again.
With the old (version 3) navigator the GPS Driver App (it was a little app) stayed open when you call StopApplication.
Only the menu item "Exit" did terminate the GPS driver.
You saw this since this driver placed an icon in the taskbar- you coul never stop such an orphan GPS driver.
But - and that is the positive difference.TTN "reattached" to this running instance.
So for know I think it is good to know that a call to DisableRawGPS is essential if you enabled it.
And furtheron - a crash in an app which EnabledRawGPS - means a reset of the device.
Did you try to call DisableRawGPS in such a situation?
Thanks for the input
Manfred