An ASSERT Error Occurs in Oledisp1.cpp When You Use VT_UI2 and VT_UI4 Variant Types (821798)



The information in this article applies to:

  • Microsoft Windows CE Platform Builder 3.0

SYMPTOMS

When you use either the VT_UI2 variant type or the VT_UI4 variant type in a method for a Microsoft Foundation Classes (MFC) ActiveX control, you may experience the following symptoms:
  • You receive an ASSERT error in Oledisp1.cpp.
  • A memory leak occurs in the CCmdTarget::CallMemberFunc function.

RESOLUTION

Hotfix Information

A supported software update is now available from Microsoft as Windows CE 3.0 Core OS QFE 821798. 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

File Information

The English version of this fix 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   Version         Size    File name
   ----------------------------------------------------------------------------------

   Path: Signed
   25-Jul-2003  21:52  3.0.3.725   16,202,328  Wincepb30-030725-kb821798-common.exe  
The English version of this fix has the file attributes (or later) that are listed in the following table.
   Date         Time   Version            Size    File name
   --------------------------------------------------------------

   Path: Others\Mfc\Include
   24-Jun-2003  19:00                     51,458  Afxdisp.h

   Path: Others\Mfc\Lib\Arm
   24-Jun-2003  20:08  6.0.1004.1271     261,632  Olece300.dll     ARM
   24-Jun-2003  20:08                    599,212  Olece300.lib
   24-Jun-2003  20:08                  1,953,792  Olece300.pdb
   24-Jun-2003  20:18  6.0.1004.1271     583,168  Olece300d.dll    ARM
   24-Jun-2003  20:18                    685,926  Olece300d.lib
   24-Jun-2003  20:18                  2,199,552  Olece300d.pdb

   Path: Others\Mfc\Lib\Mips
   24-Jun-2003  20:08  6.0.1004.1271     355,840  Olece300.dll     R4000
   24-Jun-2003  20:08                    598,886  Olece300.lib
   24-Jun-2003  20:08                  1,994,752  Olece300.pdb
   24-Jun-2003  20:19  6.0.1004.1271     707,072  Olece300d.dll    R4000
   24-Jun-2003  20:19                    685,926  Olece300d.lib
   24-Jun-2003  20:19                  2,174,976  Olece300d.pdb

   Path: Others\Mfc\Lib\Mips16
   24-Jun-2003  20:09  6.0.1004.1271     241,664  Olece300.dll     MIPS16
   24-Jun-2003  20:09                    600,074  Olece300.lib
   24-Jun-2003  20:09                  1,986,560  Olece300.pdb
   24-Jun-2003  20:20  6.0.1004.1271     500,224  Olece300d.dll    MIPS16
   24-Jun-2003  20:20                    685,748  Olece300d.lib
   24-Jun-2003  20:20                  2,240,512  Olece300d.pdb

   Path: Others\Mfc\Lib\Mipsfp
   24-Jun-2003  20:10  6.0.1004.1271     357,888  Olece300.dll     R4000
   24-Jun-2003  20:10                    598,886  Olece300.lib
   24-Jun-2003  20:10                  1,994,752  Olece300.pdb
   24-Jun-2003  20:20  6.0.1004.1271     707,072  Olece300d.dll    R4000
   24-Jun-2003  20:20                    685,926  Olece300d.lib
   24-Jun-2003  20:20                  2,174,976  Olece300d.pdb

   Path: Others\Mfc\Lib\Ppc
   24-Jun-2003  20:11  6.0.1004.1271     327,168  Olece300.dll     PowerPC
   24-Jun-2003  20:11                    601,338  Olece300.lib
   24-Jun-2003  20:11                  1,978,368  Olece300.pdb
   24-Jun-2003  20:21  6.0.1004.1271     682,496  Olece300d.dll    PowerPC
   24-Jun-2003  20:21                    685,932  Olece300d.lib
   24-Jun-2003  20:21                  2,215,936  Olece300d.pdb

   Path: Others\Mfc\Lib\Sh3
   24-Jun-2003  20:12  6.0.1004.1271     258,560  Olece300.dll     SH3
   24-Jun-2003  20:12                    603,472  Olece300.lib
   24-Jun-2003  20:12                  2,322,432  Olece300.pdb
   24-Jun-2003  20:22  6.0.1004.1271     555,520  Olece300d.dll    SH3
   24-Jun-2003  20:22                    685,382  Olece300d.lib
   24-Jun-2003  20:22                  2,420,736  Olece300d.pdb

   Path: Others\Mfc\Lib\Sh4
   24-Jun-2003  20:14  6.0.1004.1271     261,120  Olece300.dll     SH4
   24-Jun-2003  20:14                    605,810  Olece300.lib
   24-Jun-2003  20:14                  2,330,624  Olece300.pdb
   24-Jun-2003  20:23  6.0.1004.1271     564,736  Olece300d.dll    SH4
   24-Jun-2003  20:23                    693,476  Olece300d.lib
   24-Jun-2003  20:23                  2,437,120  Olece300d.pdb

   Path: Others\Mfc\Lib\Thumb
   24-Jun-2003  20:15  6.0.1004.1271     219,136  Olece300.dll     THUMB
   24-Jun-2003  20:15                    599,212  Olece300.lib
   24-Jun-2003  20:15                  1,970,176  Olece300.pdb
   24-Jun-2003  20:24  6.0.1004.1271     465,408  Olece300d.dll    THUMB
   24-Jun-2003  20:24                    685,926  Olece300d.lib
   24-Jun-2003  20:24                  2,199,552  Olece300d.pdb

   Path: Others\Mfc\Lib\X86
   24-Jun-2003  20:16  6.0.1004.1271     181,248  Olece300.dll     X86
   24-Jun-2003  20:16                    597,590  Olece300.lib
   24-Jun-2003  20:16                  1,871,872  Olece300.pdb
   24-Jun-2003  20:24  6.0.1004.1271     470,528  Olece300d.dll    X86
   24-Jun-2003  20:24                    685,382  Olece300d.lib
   24-Jun-2003  20:24                  2,125,824  Olece300d.pdb

   Path: Others\Mfc\Src
   24-Jun-2003  19:00                      4,066  Dispimpl.h
   24-Jun-2003  19:00                     51,586  Oledisp1.cpp
   24-Jun-2003  19:00                     13,673  Oledisp2.cpp

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

MORE INFORMATION

This update includes the following improvements:
  • Implements correct handling of VT_I1, VT_UI2, VT_UI4, VT_R4 and VT_R8 dispatch parameters for SH4.
  • Improves thunk code according to the correct CPU calling conventions for SH3 and SH4.
  • Eliminates a memory leak in dispatch code marshaling.

Modification Type:MinorLast Reviewed:8/18/2005
Keywords:kbBug kbfix kbQFE KB821798 kbAudDeveloper kbAudOEM