Re: What are these targets for in eVC3?

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance

From: Paul G. Tobey [eMVP] (ptobey_no_spam_at_instrument_no_spam.com)
Date: 04/16/04


Date: Fri, 16 Apr 2004 08:54:25 -0700

Yes, those are the "devices" in these cases, but, for those platforms, the
vendors are not permitted to choose random processors to base their systems
on (PPC 2003, for example, *must* be ARM-based; it's just part of the
platform definition agreed to by MS and the OEMs).

It's not that there aren't any SDKs which allow you to choose those
processors; it's just that you don't have any. None of the mass-market,
defined-by-MS, platforms use them. There are many devices running each of
those processor combinations, but they are special-purpose devices. They
might be industrial automation devices (we make one based on x86), routers,
or whatever. You just don't have the right SDK.

No, Pocket PC is *not* an OS. It's a platform: a definition which includes
a version of the OS (which is Windows CE), a set of built-in applications, a
list of processors which the hardware OEM may use, a set of behaviors, etc.

To do what you are talking about, building a device-side DLL, you need to
decide what platforms you will target. You might say, "Well, this will be
easier to maintain if we choose PPC2002 and later", in which case you don't
have to worry about MIPS. Or you might say, "We need to support everything
back to the stone age", in which case, you'll want to target the PPC (base),
and recompile the DLL for all of the processors available with that
platform. In any case, it's the SDK that you select that will determine
which processors you can (and should), target.

Paul T.

"Stefan Kuhr" <kustt110@gmx.li> wrote in message
news:407FEF9E.5D173C9F@gmx.li...
> Hi Paul,
>
> "Paul G. Tobey [eMVP]" wrote:
> >
> > You are thinking about this incorrectly. You don't target processors;
you
> > target ***devices***. If the target device is based on, or might be
based
> > on, a particular processor, then eVC will let you select that processor.
If
> > you have a device with a MIPS processor in it, installation of the SDK
and
> > selection of that device will enable MIPS as a target type.
> >
>
> OK. If I understand you correctly, then the option to choose "Pocket PC"
> or HPC 2000" or "Pocket PC 2002" is the choice between "devices", right
> (If not, please give me an example what different devices could be)? And
> for one such "device" there are vendors who use different processors.
> For instance for "Pocket PC" there are vendors who sold gadgets with
> either ARM, MIPS or SH3 processor. And that is why MS's SDK for this
> device supports these processor types and lets me choose these
> processors for a new project. What I don't understand is: Why are there
> no options for new projects in eVC3 that would ever let me allow to
> write a binary that runs on "WCE MIPS 16", "WCE MIPSFP", "WCE PPC", "WCE
> SH4" or "WCE THUMB". Are there simply no such devices out there that use
> these processors or do I simply have to install another SDK for another
> "device" (as you call it and which then obviuosly is the right term to
> use here)?
>
> I really might have misunderstood this all the time, because I always
> thought, "Pocket PC" is an OS version that targets a number of CPUs like
> NT4 was an OS that was available for a number of different CPUs. And
> that "Pocket PC 2002" is its successor OS which (in this case) runs on
> ARM only. Is this view just plain wrong?
>
> My reason to ask all these question is the following: We want to write
> management software that has to run as an ActiveSync-server DLL on the
> Pocket PC in order to install software on all possible Pocket PCs or
> read out information about the Pocket PC so this data gets stored on its
> associated PC as asset data for later on when our inventory sofware
> runs. Therefore I need to know for which processor or device
> variants/permutations I have to write an ActiveSync server DLL. This
> also means I have to get all SDKs for eVC3 in order to compile all
> possible target specific DLLs.
>
> Does it for instance make sense to compile a "Pocket PC" DLL for the SH4
> processor (which I can't select when creating a DLL project) or is there
> simply no Windows CE device out there using an SH4 processor and running
> the Pocket PC OS?
>
> Paul, please shed some more light on this confusing issue or point me
> somewhere where I can read and learn more about this.
>
>
>
> TIA,
>
> --
> Stefan Kuhr
>
> "Lesen schadet der Dummheit"



Relevant Pages

  • Re: x86 CE SDK
    ... don't target *processors* with your code in Windows CE programs; ... As in the platforms (HPC, Pocket PC, Pocket PC 2002, etc.) defined by ... If your device SDK, does *not* say that the device might ...
    (microsoft.public.windowsce.embedded.vc)
  • Re: What are these targets for in eVC3?
    ... You just don't have the right SDK. ... > decide what platforms you will target. ... the "Pocket PC" device and compile four DLLs for MIPS, SH3, x86 and ARM ...
    (microsoft.public.windowsce.embedded.vc)
  • Re: How to force a key press/mouse click event?
    ... The right way to handle this is to install the C++ SDK for your target ... Paul G. Tobey wrote: ... missing method exception saying it can't find the PInvoke DLL ...
    (microsoft.public.dotnet.framework.compactframework)
  • Re: What are these targets for in eVC3?
    ... > selection of that device will enable MIPS as a target type. ... then the option to choose "Pocket PC" ... And that is why MS's SDK for this ... variants/permutations I have to write an ActiveSync server DLL. ...
    (microsoft.public.windowsce.embedded.vc)
  • using stdafx.h in generated _i.c file?
    ... I have an ATL COM DLL I wrote for PPC2004/WM2005. ... those platforms works great. ... If I create an ATL COM DLL from scratch and target Win32, ...
    (microsoft.public.vc.atl)