Microsoft® Windows® CE 5.0 extends the performance, reliability, quality, and ease of use of earlier versions of the Windows CE operating system (OS). Microsoft Platform Builder for Windows CE 5.0 is an integrated development environment (IDE) for building custom embedded OS designs based on Windows CE. Platform Builder has all the development tools necessary for you to design, create, build, test, and debug a Windows CE–based OS design.
The following topics highlight changes and improvements to Windows CE and Platform Builder, and provide links to more information:
Windows CE 5.0
Board Support Packages
Debugging and Testing
Windows CE Features
Unified Build System
New and Updated Platform Builder Functionality
Windows CE 5.0
Board Support Packages
Windows CE 5.0 includes a production-quality OEM adaptation layer (OAL) that simplifies and shortens the process of developing an OAL. It provides you with an improved level of OAL componentization through code libraries, directory structures that support code reuse, centralized configuration files, and a consistent architecture across processor families and hardware platforms.
For more information, see Production-Quality OAL.
In Windows CE 5.0, BSPs for the following hardware platforms contain production-quality OAL support:
Intel PXA27x Development Platform
SMDK2410 Samsung MCU Development Kit
AMD DBAu1000 Development Board
AMD DBAu1100 Development Board
AMD DBAu1500 Development Board
NEC Solution Gear 2-Vr4131 Development Kit
NEC Solution Gear 2-Vr5500 Development Kit
For more information on how to use the BSPs for these hardware platforms, see Supported Board Support Packages.
Windows CE 5.0 provides production-quality drivers that adhere to best practices for developing Windows CE device drivers. Because production-quality drivers are more functional, portable, stable, discoverable, and readable than other drivers, using them has many advantages. For more information about these drivers, see Production-Quality Drivers and Best Practices for Developing a Device Driver.
Device Manager is a Windows CE OS process that tracks loaded drivers and their interfaces. In Windows CE 5.0, Device Manager has the following new and updated functionality:
New device namespaces, which allow for bus parent-to-client relationships and allow for greater than ten instances of a device
For more information, see Device File Names.
New device discovery functions and structures
For more information, see Device Manager Reference.
Componentization changes, link changes, and other changes pertinent to devices
For more information, see Device Manager.
Handling Race Conditions
In Windows CE 5.0, the XXX_PreClose (Device Manager) and XXX_PreDeinit (Device Manager) optional stream interface entry points allow certain race conditions to be eliminated.
For more information, see Resolving Race Conditions in Device Drivers.
Windows CE 5.0 introduces the ColdReboot system power state, which also invokes the new SetCleanRebootFlag function and forces a cold boot when the system restarts.
Earlier versions of Windows CE supported the reboot system power state, which shut down devices and invoked KernelIoControl with IOCTL_HAL_REBOOT.
I/O Resource Manager
Windows CE 5.0 adds new I/O Resource Manager functions. For more information, see the following topics:
Only trusted processes can invoke I/O Resource Manager functions. For more information, see I/O Resource Manager.
PC Card Architecture with 32-bit Cardbus
The Windows CE 5.0 PC Card stack replaces the PCMCIA stack included in Windows CE .NET 4.2 and earlier. This stack exposes the bus agnostic drivers interface for clients as well as a legacy compatibility layer that supports all existing PCMCIA clients. The Windows CE 5.0 stack fully supports 32-bit Cardbus cards. For more information about the PC Card architecture, including SYSGEN and BSP variables, see PC Card Drivers.
Previous support for 16-bit adapters still exists. For backward compatibility, the new client interface is exposed in parallel with the legacy PCMCIA client interface.
USB Printer Class Driver
The Windows CE 5.0 universal serial bus (USB) printer class driver installs the sample Printer Control Language (PCL) printer driver as the default.
For more information, see Sample USB Printer Class Driver.
USB Function Controller Drivers
Windows CE 5.0 adds USB 2.0 function controller drivers. These drivers are bus drivers that load their client drivers.
For more information, see USB Function Controller Drivers.
USB Mass Storage Function Driver
Windows CE 5.0 adds a USB Mass Storage Function driver that enables a Windows CE-based device to expose a native storage device to a USB host. For example, the Windows CE-based device can expose internal CompactFlash, hard disk, or USB Mass Storage components. The storage then appears as a USB Mass Storage device to a USB host. This enables the USB host to transfer files to and from the native storage device on the Windows CE-based device by means of USB.
For information about USB mass storage function driver registry settings, see USB Mass Storage Class Driver Registry Settings.
For information about the USB function controller driver, see USB Function Controller Drivers.
USB 2.0 Host EHCI Driver
Windows CE 5.0 adds a USB 2.0 Host enhanced host controller interface (EHCI) driver.
For more information, see USB Host Controller Drivers.
Secure Digital I/O (SDIO) Software Stack
Windows CE 5.0 adds a software stack that enables SDIO sockets. The stack's SDBus driver loads host controller drivers below and exposes a standard API above that all SDIO client manufacturers can use to write device drivers for all Windows CE-based platforms. One host driver provided is the standard, which covers all chips utilizing the Standard Host Register Specification v1.0, as defined by the Secure Digital Association. Other host chipsets are also provided.
This stack works for SD Memory cards, SDIO-enabled cards, combo cards, and multi-function cards. For more information about SD drivers, see Secure Digital Card Driver.
Direct3D Mobile Driver
Windows CE 5.0 adds a Direct3D Mobile display driver, which provides the drawing services used by the Direct3D Mobile middleware. The middleware handles all call transport, synchronization, and OS integration issues and the driver manages all the memory for display surfaces.
For more information about Direct3D Mobile middleware, see Direct3D Mobile.
For more information about Direct3D Mobile display drivers, see Direct3D Mobile Display Drivers.
Windows CE 5.0 adds the following display driver functionality:
Display drivers that you can include from the Platform Builder Catalog:
Silicon Motion 3DR (Cougar)
ATI Rage XL Expert 98
Software-emulated raster operations (ROPs) in a single, extensible library
This optimizes all graphics operations. In previous versions of Windows CE, emulation was handled in Emul.lib, Swg.lib, and the GPE AnyBlt function, while a few ROPs were optimized in Emul.lib and the rest were handled in the AnyBlt function.
A Graphics Device Interface Performance Test
This script-driven test assesses the performance of display operations. The Windows CE Tesk Kit (CETK) provides four scripts that the Graphics Device Interface Performance Test can run. You can also write, and then run, a custom script for such purposes as testing a specific function or mimicking an application. For more information, see Graphics Device Interface Performance Test.
For more information, see Display Drivers.
Deprecated and Modified Drivers
In Windows CE 5.0, the following changes have been made to drivers:
The BatteryNotifyOfTimeChange function has been deprecated.
Notification LED (NLED) drivers have been moved from GWES to Device Manager.
Building GWES in your OS design is not necessary after moving NLED drivers from GWES to Device Manager. For more information, see Moving a Notification LED Driver from GWES to Device Manager.
Debugging and Testing
Core Connectivity Infrastructure
Windows CE 5.0 supports Core Connectivity and Platform Manager. Core Connectivity is a unified connectivity framework that supports developers working in both Platform Builder and Microsoft Visual Studio®. Platform Manager is a communications technology that manages the communications between a development workstation and a Windows CE–based device. Although Core Connectivity replaces Platform Manager, Platform Manager continues to work in Windows CE 5.0.
In Windows CE 5.0, use the Core Connectivity API and not the Platform Manager API except in code that does not need to be compatible with future releases of Windows CE.
For more information, see Core Connectivity Infrastructure.
Windows CE 5.0 supports the following new breakpoint functionality:
The ability to set breakpoints while the target device is running
The ability to set breakpoints in ROM
For more information, see Breakpoints.
Windows CE 5.0 adds a debugger driver, eXDI2, that creates a single debugger API to support both hardware-assisted debugging and software debugging. These debugger components offer the flexibility to access OS-specific information without requiring code to run on a target device. To adapt an existing code base to new target hardware for debugging, you can write a new eXDI driver. An adaptation layer converts existing eXDI drivers to the new eXDI2 API as necessary. For more information, see Hardware-assisted Debugging.
The eXDI2 debugger driver has the following functionality:
Simplified connection interfacing with KdStub using the Kernel Independent Transport Layer (KITL)
Host-side debugger functionality grouped as a service under the Core Connectivity infrastructure
Support for multiple client devices
Helper components available as in-proc COM objects
Improved breakpoint features and exception handling performance
Windows CE Test Kit (CETK)
Windows CE 5.0 adds the following CETK functionality:
The ability to connect the CETK to a target device by using Platform Manager
The CETK continues to support sockets as a way to connect the CETK to a target device.
The ability to start a test, disconnect the CETK from the target device, and later reconnect the CETK to the target device to collect test results
Windows CE 5.0 adds the .NET Compact Framework Service Pack 2 functionality.
Windows CE 5.0 adds functionality for retrieving contact and schedule information from a Microsoft Exchange Server 2003. The IP Phone design template and Telephony User Interface (TUI) Platform Builder Catalog item use this functionality.
Windows CE 5.0 adds XML functionality that enables error strings to be included in the run-time image. Although this increases the run-time image size by 40 KB, it provides more meaningful information to developers when there are errors parsing XML text. Error strings are supported only by the XML Document Object Model (DOM) and the other XML components that build on top of DOM. They are not supported by the XML Minimal Parser component.
For more information, see XML OS Design Development.
Applications - End User
Remote Desktop Protocol (RDP)
Windows CE 5.0 adds the following RDP functionality:
A Terminal Services Client Access License (TS CAL) maintenance tool
TS-CAL is available in any configuration that supports control panel programs, such as Enterprise Web Pad. It requires the RDP client to be in the run-time image.
A file redirector filter
This allows you to filter when the drive redirector is enabled.
Inclusion of all Control Panel programs in the Thin Client image
To gain access to the control panel programs, press F2.
RDP 5.5 replaces RDP 5.1
For migration information specific to RDP 5.5, see RDP 5.5 Migration Issues.
RDP running in Graphics, Windowing, and Events Subsystem (GWES) rather than in its own process space
This provides faster display updates by reducing the protected server library (PSL) and kernel overhead. RDP running in GWES can improve performance up to 30%. If you configured RDP to run in GWES, you cannot run RDP inside a Web browser. Optionally, you can configure RDP to run in Microsoft ActiveX Control.
For more information, see RDP Modes of Operation in Windows CE.
A connection bar pinned to the UI
The user cannot unpin it unless the default value of a new registry setting is changed. This prevents spoofing of the client UI at public kiosks. For more information, see RDP Security and Terminal Services Client Configuration through the .rdp File.
Windows Messenger for Windows CE
The Microsoft Windows Messenger for Windows CE real-time communications software combines real–time voice and text communications with file transfer capability.
Windows CE 5.0 adds the following Windows Messenger functionality:
Note The Windows Messenger client implementation in Windows CE 5.0 is based on the desktop Windows Messenger version 5.0 client.
Support for categorizing contacts into groups and for dragging and dropping contacts
Support for including and viewing emoticons, which are glyphs that show a smiling face, for example
User Interface (UI) improvements, including system tray notifications, known as alerts, for incoming messages, and ToolTip support.
An updated .NET Messenger Service
Microsoft Windows Messenger for Windows CE real-time communications software combines real–time voice and text communications with file transfer capability. The .NET Messenger Service is one of two Windows Messenger client application server types. It enables a user to communicate with contacts using a .NET Passport account.
For more information, see Windows Messenger.
Communication Services and Networking
Native Wi-Fi WLAN Access Points and Stations
Windows CE 5.0 includes support for Native Wi-Fi wireless local area networks (WLANs). This technology supports Native Wi-Fi access point and Native Wi-Fi station.
For more information, see Native Wi-Fi WLAN.
Windows CE 5.0 adds or extends the following Bluetooth functionality:
Support for the Headset Profile (HSP) and the Hands-Free Profile (HFP) by using the Audio Gateway Service
For more information, see Bluetooth Profiles, Headset Profile, Hands-Free Profile, and Audio Gateway Service.
Support for the Personal Area Network (PAN) profile, which includes support for PAN User (PANU), Network Access Point (NAP), and General Ad-hoc Network (GN).
For more information, see Personal Area Network (PAN) Profile Registry Settings.
The Bluetooth Secure Digital I/O (SDIO) transport driver
As defined by the Bluetooth Special Interest Group (SIG), this driver is used by the host system to interact with a Bluetooth device. The device uses the SDIO interface as the primary hardware to connect to the host system through a standard Bluetooth protocol.
Support for built-in and PnP transport drivers and for loading the appropriate transport driver in the enhanced Bluetooth Universal Transport Manager (BthUniv)
For more information, see Supported HCI Transport Drivers.
New SDK samples as a base for implementing Bluetooth technology in Windows CE-based applications
For more information, see Bluetooth Application Development Samples.
The Bluetooth functions BthAnswerPairRequest and BthPairRequest
Windows CE 5.0 adds domain discovery, which enables a Windows CE-based device to discover an Active Directory server to query.
For more information, see Domain Discovery.
Windows CE 5.0 adds the IPSec v4 Platform Builder Catalog item, which enables two client devices on a network to establish peer-to-peer communication using the IP Security (IPSec) protocol. This technology enables Windows CE-based devices to participate in networks that are secured by IPSec.
For more information, see IPSec v4.
Internet Connection Sharing
Internet Connection Sharing (ICS) is technology that allows networked computers to share a single connection to the Internet. In Windows CE 5.0, ICS includes the Gateway Logging functionality, which writes various system events to a log file on the Gateway device.
For more information, see Gateway Logging and Gateway Logging Registry Settings.
NDIS Packet Capturing
Windows CE 5.0 adds two sample tools, Netlog and Netlogctl, to capture network traffic so it can be read by the Microsoft Windows Network Monitor (NetMon).
For more information, see NDIS Packet Capturing.
Remote Configuration Framework
Windows CE 5.0 adds the Remote Configuration Framework, which provides the structure for creating Web-based user interfaces for headless devices.
For more information, see Remote Configuration Framework.
Windows CE 5.0 adds the following TCP/IP functionality:
Dynamic Query and Modify, which allows you to query arbitrary records in a Domain Name System (DNS) Server
Secure DNS, which allows you to perform more secure, dynamic updates
You can modify or remove multiple resource record sets that are associated with a specific name.