I've been trying to minimise the size of our kernel so we reduce the use of
RAM. We need to keep Activesync so we have the ability to do debugging, so I
keep SYSGEN_AS_BASE. But when I removed all the components I though we didn't
need Activesync refused to start - I got the error "Cannot connect to PC. No
program memory available". There was certainly enough memory available so I
don't know what was causing the problem. I tried adding in the components I'd
just removed and found that adding back SYSGEN_CONNMC allowed Activesync to
work again.

Why does Activesync require the Network User Interface to work? We've
removed the shell from our kernel so there's no way pf accessing this
component.

There appear to be several of these dependency mistakes at the low end of
Windows CE. Is there a complete list anywhere? Are these going to be fixed?
Are they fixed in Windows CE 6.0?

Tom

Re: Activesync dependencies by Steve

Steve
Sun Nov 04 18:16:48 PST 2007


> I tried adding in the components I'd
> just removed and found that adding back SYSGEN_CONNMC allowed Activesync
> to
> work again.
>
That shouldn't be too surprising as that is the connection management core.
ActiveSynch is a layer on top of network connections (Either RAS/PP or RNDIS
depending on BSP configuration)

> Why does Activesync require the Network User Interface to work? We've
> removed the shell from our kernel so there's no way pf accessing this
> component.
Because it is built on-top of those standard layers rather then replacing
them outright.

> There appear to be several of these dependency mistakes at the low end of
> Windows CE. Is there a complete list anywhere? Are these going to be
> fixed?
> Are they fixed in Windows CE 6.0?
I wouldn't consider them "mistakes" except that you could actually remove
them and make AS fail. If you anchor AS those dependencies should be
automatically pulled in.

Steve Maillet
http://www.EmbeddedFusion.com


RE: Activesync dependencies by Rob

Rob
Mon Nov 05 00:33:03 PST 2007

Dependency's are a real nightmare to figure out, you probably don't even want
to try. You don't actually need the network ui.
If its included because of dependency's you can remove it by removing it
from the BIB files that are in the release folder in the pre-makeimage
buildstep. (write a little program for that)
Ofcourse when you choose to do this, you must make sure that no crashes, or
loss of required functionality occurs as a result of this (it's your own
responsibility from that point on).
As far as I've seen, network-ui can usually be removed without much trouble.
The same goes for other files and components.

I usually remove *.bmp, *.wav ,*.2bp and a lot of other unused stuff...
That saves me a couple of MB for a typical image.
As a result, the image is smaller, takes up less space, and loads faster.

Greetings,
Rob.





"Tom Isaacson" wrote:

> I've been trying to minimise the size of our kernel so we reduce the use of
> RAM. We need to keep Activesync so we have the ability to do debugging, so I
> keep SYSGEN_AS_BASE. But when I removed all the components I though we didn't
> need Activesync refused to start - I got the error "Cannot connect to PC. No
> program memory available". There was certainly enough memory available so I
> don't know what was causing the problem. I tried adding in the components I'd
> just removed and found that adding back SYSGEN_CONNMC allowed Activesync to
> work again.
>
> Why does Activesync require the Network User Interface to work? We've
> removed the shell from our kernel so there's no way pf accessing this
> component.
>
> There appear to be several of these dependency mistakes at the low end of
> Windows CE. Is there a complete list anywhere? Are these going to be fixed?
> Are they fixed in Windows CE 6.0?
>
> Tom

Re: Activesync dependencies by Dean

Dean
Mon Nov 05 05:41:46 PST 2007

ActiveSync is one of the worst offenders for failed dependency checking, at
least in my experience. Anchoring ActiveSync does not pull in it's
dependencies. Connmc is one that was missed, and if I recall correctly
there is at least one more. Dependency checking can be a difficult problem,
but failures like this that have been around since day one should be
corrected. I think it's one of those deals where no one really complains,
and it's easily fixed by the end user. They just spend a week trying to
find the problem...

--
Dean Ramsier - eMVP
BSQUARE Corporation


"Steve Maillet (MVP)" <nospam@EntelechyConsulting.com> wrote in message
news:0CA0262A-ADA1-4971-B618-DEBF7B6566A3@microsoft.com...
>
>> I tried adding in the components I'd
>> just removed and found that adding back SYSGEN_CONNMC allowed Activesync
>> to
>> work again.
>>
> That shouldn't be too surprising as that is the connection management
> core. ActiveSynch is a layer on top of network connections (Either RAS/PP
> or RNDIS depending on BSP configuration)
>
>> Why does Activesync require the Network User Interface to work? We've
>> removed the shell from our kernel so there's no way pf accessing this
>> component.
> Because it is built on-top of those standard layers rather then replacing
> them outright.
>
>> There appear to be several of these dependency mistakes at the low end of
>> Windows CE. Is there a complete list anywhere? Are these going to be
>> fixed?
>> Are they fixed in Windows CE 6.0?
> I wouldn't consider them "mistakes" except that you could actually remove
> them and make AS fail. If you anchor AS those dependencies should be
> automatically pulled in.
>
> Steve Maillet
> http://www.EmbeddedFusion.com
>



Re: Activesync dependencies by Paul

Paul
Mon Nov 05 08:20:43 PST 2007

I think that everyone else has helped you with the "why". I'd like to
comment that you *don't* need ActiveSync to do debugging and I never use it,
although our platforms all have it included. If your device has some sort
of a network connection, that's all you need to do debugging using either
Platman or CoreCon...

Paul T.

"Tom Isaacson" <TomIsaacson@discussions.microsoft.com> wrote in message
news:1CB37459-D090-4E94-96AC-2B624C218935@microsoft.com...
> I've been trying to minimise the size of our kernel so we reduce the use
> of
> RAM. We need to keep Activesync so we have the ability to do debugging, so
> I
> keep SYSGEN_AS_BASE. But when I removed all the components I though we
> didn't
> need Activesync refused to start - I got the error "Cannot connect to PC.
> No
> program memory available". There was certainly enough memory available so
> I
> don't know what was causing the problem. I tried adding in the components
> I'd
> just removed and found that adding back SYSGEN_CONNMC allowed Activesync
> to
> work again.
>
> Why does Activesync require the Network User Interface to work? We've
> removed the shell from our kernel so there's no way pf accessing this
> component.
>
> There appear to be several of these dependency mistakes at the low end of
> Windows CE. Is there a complete list anywhere? Are these going to be
> fixed?
> Are they fixed in Windows CE 6.0?
>
> Tom



RE: Activesync dependencies by TomIsaacson

TomIsaacson
Mon Nov 05 18:54:00 PST 2007

No, it's the other way round. The network UI isn't in the dependencies and if
it isn't there Activesync shows the error I mentioned before.

Tom

"Rob" wrote:

> Dependency's are a real nightmare to figure out, you probably don't even want
> to try. You don't actually need the network ui.
> If its included because of dependency's you can remove it by removing it
> from the BIB files that are in the release folder in the pre-makeimage
> buildstep. (write a little program for that)
> Ofcourse when you choose to do this, you must make sure that no crashes, or
> loss of required functionality occurs as a result of this (it's your own
> responsibility from that point on).
> As far as I've seen, network-ui can usually be removed without much trouble.
> The same goes for other files and components.
>
> I usually remove *.bmp, *.wav ,*.2bp and a lot of other unused stuff...
> That saves me a couple of MB for a typical image.
> As a result, the image is smaller, takes up less space, and loads faster.
>
> Greetings,
> Rob.
>
>
>
>
>
> "Tom Isaacson" wrote:
>
> > I've been trying to minimise the size of our kernel so we reduce the use of
> > RAM. We need to keep Activesync so we have the ability to do debugging, so I
> > keep SYSGEN_AS_BASE. But when I removed all the components I though we didn't
> > need Activesync refused to start - I got the error "Cannot connect to PC. No
> > program memory available". There was certainly enough memory available so I
> > don't know what was causing the problem. I tried adding in the components I'd
> > just removed and found that adding back SYSGEN_CONNMC allowed Activesync to
> > work again.
> >
> > Why does Activesync require the Network User Interface to work? We've
> > removed the shell from our kernel so there's no way pf accessing this
> > component.
> >
> > There appear to be several of these dependency mistakes at the low end of
> > Windows CE. Is there a complete list anywhere? Are these going to be fixed?
> > Are they fixed in Windows CE 6.0?
> >
> > Tom

Re: Activesync dependencies by TomIsaacson

TomIsaacson
Mon Nov 05 19:01:00 PST 2007

The device defaults to using USB mass storage, which as far as I understand
doesn't support any kind of debugging interface.

When you say "some sort of network interface" what are the options? I tried
using RNDIS before but had problems with the setup.

Thanks for your help.

Tom

"Paul G. Tobey [eMVP]" wrote:

> I think that everyone else has helped you with the "why". I'd like to
> comment that you *don't* need ActiveSync to do debugging and I never use it,
> although our platforms all have it included. If your device has some sort
> of a network connection, that's all you need to do debugging using either
> Platman or CoreCon...
>
> Paul T.
>
> "Tom Isaacson" <TomIsaacson@discussions.microsoft.com> wrote in message
> news:1CB37459-D090-4E94-96AC-2B624C218935@microsoft.com...
> > I've been trying to minimise the size of our kernel so we reduce the use
> > of
> > RAM. We need to keep Activesync so we have the ability to do debugging, so
> > I
> > keep SYSGEN_AS_BASE. But when I removed all the components I though we
> > didn't
> > need Activesync refused to start - I got the error "Cannot connect to PC.
> > No
> > program memory available". There was certainly enough memory available so
> > I
> > don't know what was causing the problem. I tried adding in the components
> > I'd
> > just removed and found that adding back SYSGEN_CONNMC allowed Activesync
> > to
> > work again.
> >
> > Why does Activesync require the Network User Interface to work? We've
> > removed the shell from our kernel so there's no way pf accessing this
> > component.
> >
> > There appear to be several of these dependency mistakes at the low end of
> > Windows CE. Is there a complete list anywhere? Are these going to be
> > fixed?
> > Are they fixed in Windows CE 6.0?
> >
> > Tom
>
>
>

Re: Activesync dependencies by TomIsaacson

TomIsaacson
Sat Nov 10 00:14:01 PST 2007

> > I tried adding in the components I'd
> > just removed and found that adding back SYSGEN_CONNMC allowed Activesync
> > to
> > work again.
> >
> That shouldn't be too surprising as that is the connection management core.
> ActiveSynch is a layer on top of network connections (Either RAS/PP or RNDIS
> depending on BSP configuration)

Obviously Activesync requires network components, but SYSGEN_CONNMC is
described as the Network User Interface. I wouldn't expect AS to be dependent
on a UI component.

> > There appear to be several of these dependency mistakes at the low end of
> > Windows CE. Is there a complete list anywhere? Are these going to be
> > fixed?
> > Are they fixed in Windows CE 6.0?
> I wouldn't consider them "mistakes" except that you could actually remove
> them and make AS fail. If you anchor AS those dependencies should be
> automatically pulled in.

That's the point - SYSGEN_CONNMC isn't automatically pulled in when you
include AS. I assume this is a mistake.

I've done some more testing on this and the only part of SYSGEN_CONNMC that
Activesync actually requires is rnaapp.exe. Including this manually allows
Activesync to work as normal.