Boot Loader Changes in Windows Embedded CE 6.0

1/5/2010

In previous releases, exception handling using __try / __except was not supported in boot loaders and KITL. These components are linked to the same limited functionality libraries. The libraries defined exception handling symbols that caused a link-time build break if exception handling was used.

In Windows Embedded CE 6.0, exception handling has been enabled for the KITL component, but not for the boot loader (which runs prior to kernel initialization). However, since boot loaders and KITL still use the same shared libraries, you can no longer use the above method to prevent linking with exception handling support.

To prevent random crashes in the boot loader phase, you must explicitly ensure you do not use exception handling in the boot loader code. This can be checked by scanning the boot loader MAP files for the __C_specific_handler string (which indicates the compiler has imported support for exception handling).

See Also

Concepts

BSP Implementation Guide

Other Resources

Developing a Boot Loader
Migrating a BSP to Windows Embedded CE 6.0