This documentation is archived and is not being maintained.

What's New in Developing Visual C++ Device Applications 

Visual Studio 2005

Visual Studio 2005 includes device development in Visual C++. Previously, developing device projects with Visual C++ required a version of eMbedded Visual C++. The new features detailed in the following sections are improvements over eMbedded Visual C++.

Integrated Development Environment (IDE)

Target Multiple Operating Systems

The Visual Studio 2005 toolset provides the ability to target Pocket PC 2003, Smartphone 2003, custom Windows CE 5.0-based SDKs, and future SDK releases.

Project System

The project system now associates platforms with their supported CPU architectures. Previous versions of eMbedded Visual C++ allowed the selection of a CPU architecture that was not supported by the current active project.


In Visual Studio 2005, IntelliSense reflects across the Software Development Kit (SDK) header files to provide accurate information about the targeted platform.

Mixed Mode Solutions

Visual Studio 2005 enables device developers to have both managed, Visual C# or Visual Basic, code and unmanaged, Visual C++, code in the same solution. It will also enable desktop and device Visual C++ code to be in the same project.

Application Install

Allows developers to package their device applications and create a desktop installer to distribute the applications to devices.

Custom Application and Class Wizards

Visual Studio 2005 makes it easy to write application and class wizards for device projects.

Resource Editor

The Resource Editor includes device-specific resources, such as the State of Input Panel and CAPEdit controls.


The Visual Studio 2005 C++ device debugger has the following new features or improvements:

  • Improved robustness and performance over previous device application debuggers.

  • The ability to detach and re-attach to processes.

  • The ability to attach to a process without the executable.

  • Support for breakpoints in shared DLLs.

  • Multiple process debugging.

  • Improved expression evaluation, including more expressive debugger windows.


The Visual Studio 2005 C++ device compilers have the following new features or improvements:

  • Support for /LTCG (Link-time Code Generation).

  • Increased compiler limits.

  • /GS switch support for buffer overrun detection.

  • Support for the __restrict keyword.

  • Updates to conform to a higher percentage of C++ standards.


The Visual C++ libraries for devices have the following new features or improvements:

  • Microsoft Active Template Library (ATL) for devices and Microsoft Foundation Classes (MFC) for devices have been updated to the 8.0 code base.

  • Extensive security, performance, stability and standards compliance work in MFC for devices, ATL for devices, the C run-time (CRT) library for devices, and the standard C++ library for devices.

  • Common ATL and MFC functionality has been merged.

  • Stream support has been added to the standard C++ library for devices.


The following features have been added to ATL for devices:

  • ActiveX control hosting.

  • The ability to consume Web services.

  • Bitmap support with the CImage class.

  • New classes for managing arrays, lists and trees.

  • Enhanced string manipulation and conversion.

  • Extended Socket support for IPv6.


The following features have been added to MFC for devices:

  • Now available for Smartphone.

  • ActiveX control hosting and creation.

See Also