Microsoft KB Archive/832266

From BetaArchive Wiki

Article ID: 832266

Article Last Modified on 5/27/2005



APPLIES TO

  • Microsoft Windows CE .NET 4.2




SYMPTOMS

When an unhandled exception occurs inside the window procedure of an application, you do not receive an error message, and the Just-In-Time (JIT) debugger does not start.

CAUSE

The operating system has changed; earlier versions did not exhibit this behavior.

In earlier versions of Windows CE, the error message was displayed, and the JIT debugger was started from the first-chance exception logic in the operating system.

The current version displays the error message and starts the JIT debugger from the second-chance (unhandled) exception logic. Because Graphics, Windowing and Events Subsystem (GWES) installs an exception handler during a call to a window procedure, these exceptions are caught and never reach the second-chance exception logic.

RESOLUTION

Hotfix Information

A supported software update is now available from Microsoft as Windows CE 4.2 Core OS QFE 832266. To resolve this problem immediately, click the following article number for information about obtaining Windows CE Platform Builder and core operating system software updates:

837392 How to locate core operating system fixes for Microsoft Windows CE Platform Builder products


Prerequisites

This fix is supported only when all previously issued fixes for this product have also been installed.

Restart Requirement

After you install this update, you must clean and build the whole platform. You do not have to restart your computer after you apply this fix.

Hotfix Replacement Information

This fix does not replace any other fixes.

File Information

The English version of this package has the file attributes (or later) that are listed in the following table.

   Date         Time   Version            Size    File name
   ---------------------------------------------------------------------------------------
   06-Feb-2004  18:48  4.2.4.206       1,047,280  Wincepb42-040206-kb832266-armv4.exe
   06-Feb-2004  18:48  4.2.4.206       1,047,280  Wincepb42-040206-kb832266-armv4i.exe
   06-Feb-2004  18:48  4.2.4.206       1,063,664  Wincepb42-040206-kb832266-mipsii.exe
   06-Feb-2004  18:48  4.2.4.206       1,063,664  Wincepb42-040206-kb832266-mipsii_fp.exe
   06-Feb-2004  18:48  4.2.4.206       1,084,144  Wincepb42-040206-kb832266-mipsiv.exe
   06-Feb-2004  18:48  4.2.4.206       1,084,144  Wincepb42-040206-kb832266-mipsiv_fp.exe
   06-Feb-2004  18:48  4.2.4.206       1,030,896  Wincepb42-040206-kb832266-sh3.exe
   06-Feb-2004  18:48  4.2.4.206       1,034,992  Wincepb42-040206-kb832266-sh4.exe
   06-Feb-2004  18:48  4.2.4.206         948,976  Wincepb42-040206-kb832266-x86.exe

The English version of this hotfix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.

   Date         Time                      Size    File name
   --------------------------------------------------------------

   Path: Public\Common\Oak\Lib\ARMV4\Debug
   09-Dec-2003  22:15                    854,152  Thunks.lib

   Path: Public\Common\Oak\Lib\ARMV4\Retail
   09-Dec-2003  22:14                    918,066  Thunks.lib

   Path: Public\Common\Oak\Lib\ARMV4I\Debug
   09-Dec-2003  22:15                    858,116  Thunks.lib

   Path: Public\Common\Oak\Lib\ARMV4I\Retail
   09-Dec-2003  22:15                    922,174  Thunks.lib

   Path: Public\Common\Oak\Lib\MIPSII\Debug
   09-Dec-2003  22:15                    910,306  Thunks.lib

   Path: Public\Common\Oak\Lib\MIPSII\Retail
   09-Dec-2003  22:15                    993,936  Thunks.lib

   Path: Public\Common\Oak\Lib\MIPSII_FP\Debug
   09-Dec-2003  22:15                    910,554  Thunks.lib

   Path: Public\Common\Oak\Lib\MIPSII_FP\Retail
   09-Dec-2003  22:15                    994,188  Thunks.lib

   Path: Public\Common\Oak\Lib\MIPSIV\Debug
   09-Dec-2003  22:16                    927,810  Thunks.lib

   Path: Public\Common\Oak\Lib\MIPSIV\Retail
   09-Dec-2003  22:15                  1,008,758  Thunks.lib

   Path: Public\Common\Oak\Lib\MIPSIV_FP\Debug
   09-Dec-2003  22:16                    928,058  Thunks.lib

   Path: Public\Common\Oak\Lib\MIPSIV_FP\Retail
   09-Dec-2003  22:16                  1,009,010  Thunks.lib

   Path: Public\Common\Oak\Lib\SH3\Debug
   09-Dec-2003  22:16                    789,070  Thunks.lib

   Path: Public\Common\Oak\Lib\SH3\Retail
   09-Dec-2003  22:16                    895,810  Thunks.lib

   Path: Public\Common\Oak\Lib\SH4\Debug
   09-Dec-2003  22:16                    791,268  Thunks.lib

   Path: Public\Common\Oak\Lib\SH4\Retail
   09-Dec-2003  22:16                    898,262  Thunks.lib

   Path: Public\Common\Oak\Lib\X86\Debug
   09-Dec-2003  22:14                    621,758  Thunks.lib

   Path: Public\Common\Oak\Lib\X86\Retail
   09-Dec-2003  22:14                    752,510  Thunks.lib

WORKAROUND

If the intention is only to know whether exceptions are occurring in a window procedure, the application can implement its own try/except block in the window procedure.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section of this article.

MORE INFORMATION

For operating systems that are built with Full Kernel Mode enabled, this hotfix disables the GWES exception block so that exceptions in a window procedure will reach the second-chance exception logic.

To enable Full Kernel Mode, follow these steps:

  1. In Platform Builder Integrated Development Environment, click Settings on the Platform menu.
  2. On the Build Options tab, select the Enable Full Kernel Mode check box.

For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the Standard Terminology That Is Used to Describe Microsoft Software Updates


Keywords: kbbug kbfix kbqfe KB832266