Re: WaitForAPIReady CE 6.0
- From: "Paul G. Tobey [eMVP]" <p space tobey no spam AT no instrument no spam DOT com>
- Date: Fri, 11 Apr 2008 08:00:34 -0700
None that we've ever come up with, no. It makes sense that the .NET CF
run-time would wait itself until it was sure that everything it was not
prepared to have fail was ready, but I guess that wasn't high on the
priority list. As for the serial port, of course, you can catch the
exception thrown when the open fails (probably because the serial port
driver isn't loaded and initialized yet). It's the stuff that crashes the
run-time itself that difficult to deal with.
So, you've tried running your application with no shell installed and
everything is fine ("kiosk mode" is sort of generically used to indicate
that there's only one application available to the user, so I just want to
be sure)? Good to know (if surprising).
Paul T.
"Phil" <pclaydon@xxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:28D708A7-E533-4578-B7C3-FE28BA49B2D6@xxxxxxxxxxxxxxxx
Hi Paul
Thanks again for your help. Running with the shell but with the task bar
etc
disabled is of course an option but our c# app runs just fine in kiosk
mode,
and, it has to be said, with a significant improvement in performance;-)
What I do occaisionally get is an IO error (from the serial port, for
which
we use the c# component) on boot-up and I suspect this is because the
framework is not fully 'up' when our c# serial code is autostarted by our
c++
'apploader' code, which is in turn waiting on the various api's. I just
thought there might be a way to tell when it was absolutely safe for our
c#
serial code to start, but it would appear not.
Best Regards
Phil
"Paul G. Tobey [eMVP]" wrote:
I think you're still going to want the shell APIs. I think that
including
the shell, but disabling the task bar and start menu, etc., then waiting
for
the shell API to be ready before launching your managed code is probably
your best bet. Have you tried running your .NET CF application without
the
shell? I think that's a pretty important proof-of-concept.
Paul T.
"Phil" <pclaydon@xxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:15019185-D5BE-4D9A-B418-07C6E78E657E@xxxxxxxxxxxxxxxx
Thanks for your help Dean.
Unfortunately our device will have to run in Kiosk mode when it ships
so
there will be no shell as such, so the start menu approach seems to be
out
of
the picture as well. I am loathe just to wait 'a long time' by sleeping
in
my
thread until everthing 'should' be ready but it seems it might come to
that?
Thanks Again
Phil
"Dean Ramsier" wrote:
Keep in mind that the CF just sits on top of a collection of native
components. There is no single mechanism to determine in general when
a
CF
based app will be able to run because it depends on what underlying
system
component the app might have a dependency on.
I've had trouble with MFC based apps that I tried to start from the
init
key. I found that moving them to the Start menu (launched by the
shell)
always worked. I never did find the dependency, but it wasn't
sufficient
to
just wait on the shell to load...
--
Dean Ramsier - eMVP
BSQUARE Corporation
"Phil" <pclaydon@xxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:A54AF679-BEFE-48C2-A615-C7CD305EB0DA@xxxxxxxxxxxxxxxx
Hi Chris
Thanks for your reply. I actually have a c++ app which is started in
the
Init registry key which in turn then starts the managed apps.
Currently I
am
waiting on SH_GDI, SH_WMGR and SH_COMM (for serial comms?). What
specifically are the other APIS it should wait for to guarantee that
the
managed apps can also run?
Best Regards
--
Phil
Remove the nospam section from my e-mail address.
"Chris Tacke, eMVP" wrote:
There is no check for it, as it's not something in the kernel that
"gets
ready". The issue for running CF apps is knowing if the stuff the
CF
needs
to run is ready, and unfortunately you can't check that inside a CF
app
due
to the obvious Catch-22.
--
Chris Tacke, Embedded MVP
OpenNETCF Consulting
Giving back to the embedded community
http://community.OpenNETCF.com
"Phil" <pclaydon@xxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:37A3EE5A-1DD4-4E27-B046-62FE75B42042@xxxxxxxxxxxxxxxx
Hi All
Does anyone know if there is a value (or constant) of the
dwAPISlotIndex
parameter that I can use with the WaitForAPIReady function in CE
6.0
that
will tell me specifically when the Compact Framework 2.0 is
ready?
Thanks
--
Phil
Remove the nospam section from my e-mail address.
.
- Follow-Ups:
- Re: WaitForAPIReady CE 6.0
- From: Phil
- Re: WaitForAPIReady CE 6.0
- From: Dean Ramsier
- Re: WaitForAPIReady CE 6.0
- References:
- WaitForAPIReady CE 6.0
- From: Phil
- Re: WaitForAPIReady CE 6.0
- From: Chris Tacke, eMVP
- Re: WaitForAPIReady CE 6.0
- From: Phil
- Re: WaitForAPIReady CE 6.0
- From: Dean Ramsier
- Re: WaitForAPIReady CE 6.0
- From: Phil
- Re: WaitForAPIReady CE 6.0
- From: Paul G. Tobey [eMVP]
- Re: WaitForAPIReady CE 6.0
- From: Phil
- WaitForAPIReady CE 6.0
- Prev by Date: CreateSurface fails in Ddraw CETK test case 102(WINCE 6.0)
- Next by Date: Re: CE 6.0 Web Server SSL
- Previous by thread: Re: WaitForAPIReady CE 6.0
- Next by thread: Re: WaitForAPIReady CE 6.0
- Index(es):
Relevant Pages
|