You can compile applications using the EVC Integrated Development Environment
(IDE), or optionally, from the command line. However, you must consider the
following:
- Set the appropriate "Active WCE Configuration", using the WCE Configuration
toolbar. To do this, under Target Operating System select
either PocketPC or PocketPC 2002. Also, under Target Processor ,
select one of the following:
- Win32 (WCE x86em) Debug
- Win32 (WCE x86em) Release
- Win32 (WCE ARM) Debug
- Win32 (WCE ARM) Release
Note: Some of the Target Processor or Target
Operating System options may not be available, depending on which
SDKs you have installed.
- Include the header files for the native C code base. These are shared
between the two versions of PocketPC and by the C Bindings. The header file
location is in the installation directory under include.
If you include the root header file, MQe_API.h, you include
all the functions that you may require. As header files are shared, you need
to define which version of the code base you are using, as shown
in the following example:
#define NATIVE
#define MQE_PLATFORM PLATFORM_WINCE
/*Alternatively, you should add this to the Preprocessor Definitions
in the Project Settings Dialog. Add the following to the start
of the list*/
NATIVE,MQE_PLATFORM=PLATFORM_WINCE
#include <published\MQe_API.h>
- Include an entry for the top level MQe include directory in "Additional
include directories". This varies according to where you install the product.
- Insert the following .lib file names in the "Project Settings"
dialog, under :
- HMQ_nativeAPI.lib
- HMQ_nativeCnst.lib
Note: There are variations of these files for each supported release,
for example one for PocketPC 2000 ARM, one for PocketPC 2000 x86em, and so
on. To ensure that you use the correct version, qualify the filename fully
for each target build.
It is recommended that you develop applications using the PocketPC or PocketPC2002
emulator as this typically provides a faster compilation and debug environment.
However, current emulators are API emulators, meaning that they do not emulate
ARM hardware. They emulate PocketPC API calls, but the code is still x86,
that is running in an x86 virtual machine in the PocketPC 2002 emulator case.
Therefore, we recommend that you regularly test the application on the real
target device, as many problems such as byte-alignment only becomes apparent
on the real device.
Note: MQe emulator binaries are provided only for development
purposes and are not suitable for deployment into a production environment.